Luar's Flash Playground:i++ 和 ++i 的分別
新聞(101)
觀點或評論(94)
Flash書(63)
教程(72)
Design Patterns(3)
FlashCom筆記(47)
Flash Remoting筆記(27)
Flex筆記(11)
Flash Lite筆記(14)
PHP資訊(23)
Ajax筆記(9)
習作(50)
組件(16)
酷站(32)
學習資源(28)
書籍推介(15)
本站與我(91)
RSS瀏覽器
聯絡
熱愛鑽研
Ajax
ActionScript
Flash
Flash Lite
Flex
Flash Remoting
FlashCom
Director
Lingo
PHP
Multiplayer Game

搜尋
VCASMO
i++ 和 ++i 的分別 (12-05-2003)
先不要打開Flash,請嘗試想想以下程序,最後k會等於什麼?想到答案後,才用Flash執行一次,核證一下。
for (i=0, k=0; i<5; i++) {
    k += i++;
}
trace(k);
為什麼答案不是你想那個?還看《閃客實戰》第82頁的解釋。
本文章由發表。
意見
  • 我想主要是 k+=i++ 這段
    k會先加上舊的i值。
    第一次執行時 k+=0 i=1
    第二次執行時 k+=1 i=2
    第三次執行時 k+=2 i=3
    第四次執行時 k+=3 i=4
    所以答案是6

    由jawa於17-07-2003發表

  • 不明意思 

    由並州一號於24-08-2003發表

  • k=i++是i先賦值再自加
    k=++i是i先自加再賦值

    由並州一號於27-09-2003發表

  • 15

    由馬百達於03-10-2003發表

  • 6la

    由lives於12-10-2003發表

  • 分別trace(i++)及trace(++i)應該就能明瞭了吧。

    由maso於19-10-2003發表

  • 我想应该是 10
    k=0,i=0,k=I++ > k=0,i=1
    k=0,i=1,k=i++ > k=1,i=2
    k=1,i=2,k=i++ > k=3,i=3
    k=3,i=3,k=i++ > k=6,i=4
    k=6,i=4,k=i++ > k=10,i=5
    循环终止

    由刘封天於13-10-2004發表

同組文章

Movable Type 4.32-en系統支持,Luar's Production版權所有。