[問題] 令我困惑的問題...請大家解惑

看板C_and_CPP (C/C++)作者 (moto)時間16年前 (2009/08/24 19:40), 編輯推噓4(401)
留言5則, 4人參與, 最新討論串1/2 (看更多)
首先恕小弟不才 剛研究幾行程式(如下) ============================ int main() { int i=1,j=1,a,b; a=i++; b=--i; printf("a=%d",a); printf("i=%d",i); printf("b=%d",b); system("pause"); } ============================= ~~ 輸出為a=1,i=1,b=1 問題是為什麼i不是2, b不是0呢?? 請大家為我解答 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.166.107.208

08/24 20:06, , 1F
i指定給a(a=1),i加1(i=2); i減1(i=1),i指定給b(b=1);
08/24 20:06, 1F

08/24 21:05, , 2F
因為你沒看書或沒看仔細...
08/24 21:05, 2F

08/25 06:36, , 3F
a=i++ 所以 a=i 先執行 所以a=1 然後 i++ => i=2
08/25 06:36, 3F

08/25 06:37, , 4F
--i => 2-1=1 ---> i=1 --->b=1
08/25 06:37, 4F

08/31 20:47, , 5F
good answer
08/31 20:47, 5F
文章代碼(AID): #1AadmiYj (C_and_CPP)
文章代碼(AID): #1AadmiYj (C_and_CPP)