我理解這段代碼,但有一點不是很清楚。 是什麼意思(;)
在這一行for(;c>=-5;c--)
? 可能這是在書中所涵蓋的,但我沒有注意。For循環顯示從-5到5的值,然後以1爲增量回到-5
for(c=-5;c<5;c++)
printf("%d ",c);
for(;c>=-5;c--)
printf("%d ",c);
putchar('\n');
return(0);
我理解這段代碼,但有一點不是很清楚。 是什麼意思(;)
在這一行for(;c>=-5;c--)
? 可能這是在書中所涵蓋的,但我沒有注意。For循環顯示從-5到5的值,然後以1爲增量回到-5
for(c=-5;c<5;c++)
printf("%d ",c);
for(;c>=-5;c--)
printf("%d ",c);
putchar('\n');
return(0);
的for
-loop可以寫成三部分while
-loop
for(part1; part2; part3) {
statement
}
part1;
while (part2) {
statement;
part3;
}
你的情況
,該part1
是空的,所以計數器不會被初始化;因此當它離開第一個循環時,它將保持它的價值。
A for
迴路有三個部分。
第一個是初始化,當首次輸入循環時運行一次。第二個是比較,它在進入循環體之前被檢查,第三個是循環增量器,循環增量器在循環返回到頂部時運行。
這三個部分中的任何一個都可以省略。在這種情況下,初始化部分丟失,這意味着這一步沒有做任何事情。
這是不一樣的。 – Olaf