這個問題在這里已經有了答案: C 編程中的 for vs. while? (19 個回答) 昨天關門。
是否真的,在 C 語言中,我們可以使用回圈來做任何可以使用while回圈來完成的事情for,反之亦然?
uj5u.com熱心網友回復:
是的,除了里面的變數定義for
for (init; cond; incr) { body; }
如果body不包含continue陳述句,則for上面的陳述句完全等價于while下面的回圈。
init;
while (cond) {
body;
incr;
}
如果多加一組花括號,就連變數的定義都可以轉換for成while
for (int i = 0; i < 100; i ) { printf("%d\n", i); }
是相同的
{
int i = 0;
while (i < 100) {
printf("%d\n", i);
i ;
}
}
uj5u.com熱心網友回復:
是的,反之亦然。但是要使代碼更具可讀性,明智的做法是使用適當的代碼。
while 回圈用法:回圈直到滿足條件。由于回圈內的操作,條件得到滿足。
for 回圈用法:回圈直到滿足條件。這里的條件是或多或少存在于 for 回圈語法本身中的遞增/遞減運算子。
uj5u.com熱心網友回復:
是的,一個 for 回圈可以用一個 while 回圈來構造。
{ int i = 0;
while(i < 10){
// statement block without continue.
i;
}
}
并且 for 回圈可以通過省略 init 和 increment 部分來簡單地替換 while 回圈。
這并不意味著這是一個好主意。它們有不同的語意。for 回圈用于迭代給定的一組元素,即
for(auto e: collection)...
while 用于其他非計數迭代。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/434684.html
上一篇:知道何時使用回圈或地圖
