與for和while循環(huán)不同,它們都是在循環(huán)的頂部測(cè)試循環(huán)條件,而D編程語言的do ... while循環(huán)中檢查其狀態(tài)放在循環(huán)的底部。
do ... while循環(huán)類似于while循環(huán),不同的是一個(gè)do ... while循環(huán)是保證至少執(zhí)行一次。
D編程語言一個(gè)do...while的循環(huán)語法是:
do { statement(s); }while( condition );
請(qǐng)注意,條件表達(dá)式出現(xiàn)在循環(huán)的結(jié)尾,所以在循環(huán)語句執(zhí)行一次之前的測(cè)試條件。
如果條件為true,控制流跳回起來執(zhí)行,并且在循環(huán)語句再次執(zhí)行。此過程重復(fù)進(jìn)行,直到給定的條件為false。
import std.stdio; int main () { /* local variable definition */ int a = 10; /* do loop execution */ do { writefln("value of a: %d", a); a = a + 1; }while( a < 20 ); return 0; }
讓我們編譯和運(yùn)行上面的程序,這將產(chǎn)生以下結(jié)果:
value of a: 10 value of a: 11 value of a: 12 value of a: 13 value of a: 14 value of a: 15 value of a: 16 value of a: 17 value of a: 18 value of a: 19