我可以在xcode中增加一個FOR循環,但由於某種原因,相反,即遞減,不起作用。減少For循環?
這遞增工作得很好,當然:
for (int i=0; i<10; ++i) {
NSLog(@"i =%d", i);
}
但是,這種遞減不會產生一件事:
for (int i=10; i<0; --i) {
NSLog(@"i =%d", i);
}
我必須有語法錯誤,但我相信這是正確的用於xcode中的Objective C++。
我可以在xcode中增加一個FOR循環,但由於某種原因,相反,即遞減,不起作用。減少For循環?
這遞增工作得很好,當然:
for (int i=0; i<10; ++i) {
NSLog(@"i =%d", i);
}
但是,這種遞減不會產生一件事:
for (int i=10; i<0; --i) {
NSLog(@"i =%d", i);
}
我必須有語法錯誤,但我相信這是正確的用於xcode中的Objective C++。
我想你的意思>
而不是<
:
for (int i = 10; i > 0; --i) {
如果你想我的價值觀是相同的原代碼除倒序(即9,8,7,...,1,0),那麼你也需要改變邊界:
for (int i = 9; i >= 0; --i) {
您正在檢查i < 0
。這在第一次迭代中是錯誤的,因此循環不會執行。改爲改爲i > 0
。
你需要的條件是i> 0(如果我從10開始,那麼10 < 0是錯誤的,所以它從不執行循環代碼)。
變化從i<0
終止條件i>0
我只是想補充一點,先記住--i
遞減,然後檢查和i--
檢查,然後遞減。
哦,這與我在其他古代編程語言中習慣的FOR循環邏輯完全不同。我認爲條件是測試從10倒數到我達到1.這似乎違反直覺,但它的工作原理。太感謝了。 –