看板 C_and_CPP 關於我們 聯絡資訊
int main(void) { char *ptr="hikdjskagsaelgw"; change(ptr); cout<<ptr<<endl; system("pause"); return 0; } void change(char *ptr) { int i=0; while(*(ptr+i)!='\0') { *(ptr+i)=*(ptr+i)-32; i++; } } 想將如上字串轉換成大寫,但程式跑不出來,請大大幫忙解惑。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.168.147.218 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1451111818.A.4FB.html
stupid0319: char *ptr="hikdjskagsaelgw";改成char ptr[] 看看 12/26 14:41
a27417332: 置底4? 12/26 14:44
mythology01: 謝樓上 改成[]確實可以 不過為何原來的不行? 12/26 14:44
stupid0319: 因為該記憶體分頁內容不能修改呀 12/26 14:47
mythology01: ok 已解惑 謝謝! 12/26 14:48
Caesar08: <cctype>裡面有toupper可以用 12/26 15:05
kwpn: 何不用std::string std::toupper 12/26 20:56
mythology01: 感謝各位大大 (合十) 12/28 11:00