作者art1 (人,原來不是人)
看板C_and_CPP
標題Re: [問題]雙重 指標存取字串
時間Tue Apr 5 02:55:43 2016
因為想知道為什麼會在執行階段錯誤,所以嚐試修改後終於能成功執行
http://ideone.com/ORhzad
把這段程式碼貼到 notepad++ 後,用 cygwin 提供的 gcc 編譯執行就出現錯誤的結果
https://i.imgur.com/JqIzjjE.png
嚐試各種修改後,終於找到能成功編譯執行的方法
就是把原本 n = 0 改成 n = -3,結束條件從原本 n < 3 改成 n < 1
最終的結果跟 ideone 是反過來,因為變成從 YOU 開始印
https://i.imgur.com/5RuOQWR.png
最奇怪的地方是我把原作者的
http://ideone.com/UhNQlR 加上 temp = string1;
並改了一行 ptr = &temp 後用 cygwin 提供的 gcc編譯執行,執行出來的結果是
BOOK 跟 YOU 都有正確印出來,但 FOR 沒能正確印出來,直到我又改了一行
n < 4 後才能正確印出 FOR,不過在 n=1 時印出來的結果依舊是錯的
像這樣
https://i.imgur.com/TqziqKc.png
--
大概是 cygwin 提供的 gcc 版本比較不正常?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.254.6.11
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_and_CPP/M.1459796152.A.761.html
1F:→ kiedveian: 沒錯誤只是單純運氣好 04/05 08:36