以C語言為例舉個例子。在宣告完一個int變數i=0,若想將它加1,則可使用i=i+1。我們能用更簡單的方法表示,表示法為i++或++i。
i++與++i的差異是在回傳值的不同。同樣都是代表i=i+1,但是i++會回傳舊的i值,也就是0;++i會回傳新的值,也就是1。
現在直接用程式碼來說明最清楚。我們用兩種不同的程式碼來說明。
程式碼1:
output: i=1 i=1 a=0, b=1從程式碼1可以發現a是先接收舊值,i才加1;b是等i加1後,b接受i的新值1。
程式碼2:
output:
The first one for loop (i++),
i=0
i=1
i=2
i=3
i=4
The second one for loop (++i),
i=0
i=1
i=2
i=3
i=4
會發現兩種for loop結果相同,這是因為i++或++i都在執行完loop內的程式碼後才做的動作。
for (i=0;i<5;i++)
{
/* 一些程式碼 */
}
用while loop表示相當於:
int i=0;
while (i<5)
{
/* 一些程式碼 */
i++; /* 最後一步才做 */
}
沒有留言:
張貼留言