與for和while循環(huán)不同,測(cè)試循環(huán)條件循環(huán)的頂部,在Objective-C編程語(yǔ)言do ... while循環(huán)在循環(huán)的底部,檢查其條件。
一個(gè)do... while循環(huán)的while循環(huán)類似,不同之處在于,do ... while循環(huán)是保證執(zhí)行至少一次。
do... while循環(huán)在Objective-C編程語(yǔ)言的語(yǔ)法:
do { statement(s); }while( condition );
請(qǐng)注意,出現(xiàn)在條件表達(dá)式的循環(huán)結(jié)束,所以在循環(huán)中使用statement(s)前執(zhí)行一次測(cè)試條件。
如果條件為真時(shí),控制流跳回向上做,并且在循環(huán)中使用statement(s)再次執(zhí)行。重復(fù)這個(gè)過(guò)程,直到給定的條件為假。
#import <Foundation/Foundation.h> int main () { /* local variable definition */ int a = 10; /* do loop execution */ do { NSLog(@"value of a: %d ", a); a = a + 1; }while( a < 20 ); return 0; }
上面的代碼編譯和執(zhí)行時(shí),它會(huì)產(chǎn)生以下結(jié)果:
2013-09-07 22:25:28.974 demo[14864] value of a: 10 2013-09-07 22:25:28.974 demo[14864] value of a: 11 2013-09-07 22:25:28.974 demo[14864] value of a: 12 2013-09-07 22:25:28.974 demo[14864] value of a: 13 2013-09-07 22:25:28.974 demo[14864] value of a: 14 2013-09-07 22:25:28.974 demo[14864] value of a: 15 2013-09-07 22:25:28.974 demo[14864] value of a: 16 2013-09-07 22:25:28.974 demo[14864] value of a: 17 2013-09-07 22:25:28.974 demo[14864] value of a: 18 2013-09-07 22:25:28.974 demo[14864] value of a: 19