Re: [問題] 關於i++和 ++i有什麼不同

看板C_and_CPP (C/C++)作者 (Alien)時間16年前 (2009/04/30 14:38), 編輯推噓3(302)
留言5則, 3人參與, 最新討論串3/5 (看更多)
※ 引述《tocute (小飄)》之銘言: : ※ 引述《lihohsin (新)》之銘言: : : 最近在自學C++ : : 可是看不懂 : : i++和++i兩種方式有什麼不同 : : i++是指i=i+1 : : 那將++寫在前方 : : 跟寫在後方有何不同 : : 煩請大家解答 : int i=0; : int j=1; : printf("%d %d",i++, ++j); : printf("%d %d",i , j); : ----------------- : 這裡你跑出來 你就知道了 : i++ 是指先作事(先傳給函式 先印出來) 再作加法 : ++i 則是反過來 先作加法 再作事(先傳給函式 先印出來) 最後兩句不太對. 正確一點來說, i++ 是 做完遞增後, 回傳 遞增 *前* 的值 ++i 則是做完遞增後, 回傳遞增 *後* 的值 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 202.155.236.82

04/30 15:08, , 1F
推a大的解釋:) 所以這中間多一筆temp register的消耗@@
04/30 15:08, 1F

04/30 18:06, , 2F
那麼這段文言文 有沒有白話一點的講法 讓新手可以了解
04/30 18:06, 2F

04/30 18:47, , 3F
文言文? ...
04/30 18:47, 3F

04/30 21:22, , 4F
不明白哪裡文言文了, 這樣解釋如果還不夠白話的話....
04/30 21:22, 4F

04/30 21:22, , 5F
或許真的掛debug跟一下disasm會更有感覺@_@"
04/30 21:22, 5F
文章代碼(AID): #19-KTBQO (C_and_CPP)
文章代碼(AID): #19-KTBQO (C_and_CPP)