C goto 語(yǔ)句
C 語(yǔ)言中的 goto 語(yǔ)句允許把控制無(wú)條件轉(zhuǎn)移到同一函數(shù)內(nèi)的被標(biāo)記的語(yǔ)句。
注意:在任何編程語(yǔ)言中,都不建議使用 goto 語(yǔ)句。因?yàn)樗沟贸绦虻目刂屏麟y以跟蹤,使程序難以理解和難以修改。任何使用 goto 語(yǔ)句的程序可以改寫(xiě)成不需要使用 goto 語(yǔ)句的寫(xiě)法。
語(yǔ)法
C 語(yǔ)言中 goto 語(yǔ)句的語(yǔ)法:
goto label; .. . label: statement;
在這里,label 可以是任何除 C 關(guān)鍵字以外的純文本,它可以設(shè)置在 C 程序中 goto 語(yǔ)句的前面或者后面。
流程圖

實(shí)例
#include <stdio.h> int main () { /* 局部變量定義 */ int a = 10; /* do 循環(huán)執(zhí)行 */ LOOP:do { if( a == 15) { /* 跳過(guò)迭代 */ a = a + 1; goto LOOP; } printf("a 的值: %d\n", a); a++; }while( a < 20 ); return 0; }
當(dāng)上面的代碼被編譯和執(zhí)行時(shí),它會(huì)產(chǎn)生下列結(jié)果:
a 的值: 10 a 的值: 11 a 的值: 12 a 的值: 13 a 的值: 14 a 的值: 16 a 的值: 17 a 的值: 18 a 的值: 19
更多建議: