Cprogramming-c-goto-statement

提供:Dev Guides
移動先:案内検索

Cのgotoステートメント

Cプログラミングの goto ステートメントは、同じ関数内の 'goto’からラベル付きステートメントへの無条件ジャンプを提供します。

-プログラムの制御フローを追跡するのが難しくなり、プログラムの理解と修正が困難になるため、プログラミング言語では goto ステートメントを使用しないでください。 gotoを使用するプログラムは、それらを回避するために書き換えることができます。

構文

Cの goto ステートメントの構文は次のとおりです-

goto label;
..
.
label: statement;

ここで、 label は、Cキーワードを除く任意のプレーンテキストであり、 goto ステートメントの上下のCプログラムの任意の場所に設定できます。

流れ図

C gotoステートメント

#include <stdio.h>

int main () {

  /*local variable definition*/
   int a = 10;

  /*do loop execution*/
   LOOP:do {

      if( a == 15) {
        /*skip the iteration*/
         a = a + 1;
         goto LOOP;
      }

      printf("value of a: %d\n", a);
      a++;

   }while( a < 20 );

   return 0;
}

上記のコードをコンパイルして実行すると、次の結果が生成されます-

value of a: 10
value of a: 11
value of a: 12
value of a: 13
value of a: 14
value of a: 16
value of a: 17
value of a: 18
value of a: 19