作者Eric2213 (Corner)
看板C_and_CPP
標題[問題] 新手發問 do...while 要結束時請輸入0
時間Fri Sep 22 18:40:32 2017
不好意思新手發問,最近在看C語言教學手冊自學,念到陣列與字串時有個部分看不懂
https://i.imgur.com/7pqoejo.jpg
do while的部分,請問while(score[i++]>0);為什麼是放i++? 我不太理解
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.56.181.53
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_and_CPP/M.1506076834.A.CCA.html
1F:→ james732: 你知道i++跟++i的差別嗎? 09/22 18:48
2F:→ MOONY135: 確定是否輸入的值大於0吧 09/22 18:49
3F:→ Eric2213: 我了解i++跟++i的差異 我不懂的是為什麼不是i? 09/22 19:02
4F:→ Eric2213: 我懂了 是先確認輸入值是否大於0 i再+1對吧? 09/22 19:06
5F:推 KoenigseggG: 對。while迴圈是書的範例嗎?輸入超過100個數會? 09/22 19:29
6F:→ Eric2213: 超過的 元素的值會變成會是記憶體的殘留值吧? 09/22 19:41
7F:推 hylkevin: 也有可能segmentation fault 09/22 20:23
8F:→ MOONRAKER: 考備建構員。 09/23 13:50
9F:→ jacky1989: 感覺書不夠嚴謹,就像上面說的,超過100怎麼處理? 09/25 00:15
10F:→ jacky1989: i++就是先判斷後i=i+1,++i就是先i=i+1後再判斷 09/25 00:16
11F:→ jacky1989: 其實我在教學弟時,我都跟他們說,就算括號可省略 09/25 00:17
12F:→ jacky1989: 你們最好都加上去,不影響效能,但是會讓你debug更清楚 09/25 00:17
13F:→ jacky1989: 經驗提供給你參考 09/25 00:17