作者justtoothick (負八)
看板C_and_CPP
標題[問題] 編譯編不過(想要將字串分開的功能)
時間Fri May 19 17:46:50 2017
開發平台(Platform): (Ex: Win10, Linux, ...)
Win10
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
Visual Studio
問題(Question):
編譯的時候會跑出0xC0000005: 寫入位置 0x01316B3E 時發生存取違規。
我把字串改成123之類沒有空白或逗點的時候就可以成功編譯
但我的目的就是要把字串分開.......
程式碼(Code):(請善用置底文網頁, 記得排版)
http://ideone.com/b3TInH
大大好
最近在練習
想將字串分成單個字
遇到這個問題
麻煩大大幫忙看一下了
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.110.150.29
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_and_CPP/M.1495187213.A.E73.html
1F:推 Nysw: 字串指標 05/19 18:08
2F:→ hunandy14: 痾 錯的地方有點多 05/19 19:40
3F:→ hunandy14: 要宣告暫存用 char str[?] 的方式先不要用指標 05/19 19:40
謝謝樓上大大的解答!!太感謝了QQ
不過想請教一下
這部分為什麼不要用指標呢?
是說如果要用的話有什麼部分要注意嗎?
另外有推薦的書籍可以參考嗎?
感謝您!!
※ 編輯: justtoothick (123.110.150.29), 05/19/2017 20:10:12
5F:→ Nysw: 置底13誡有 05/19 20:58
6F:→ hunandy14: 指針不能直接存字串,要 new 空間給他才可以 05/19 21:28
7F:→ hunandy14: 然後 char* str="ABC"; 這樣的話ABC不能更改 05/19 21:33
8F:→ hunandy14: strtok() 會動到原字串,所以也不能設指針 05/19 21:34
9F:推 steve1012: 你直接指字串是literal constant 東西放在不能改的地 05/20 00:27
10F:→ steve1012: 方 你改他當然失敗 05/20 00:27
感謝前輩們的回覆!!
謝謝
※ 編輯: justtoothick (123.110.150.29), 05/22/2017 09:41:18