goto文


もうひとつ、ループを抜けるための文として goto 文があります。これはあまり使われません。

ソースコード

源文件
  1|/* goto01.c */
  2|
  3|#include <stdio.h>
  4|
  5|int main(void)
  6|{
  7|  int i = 10;
  8|
  9|  START:
 10|  if(i > 0){                                                                
 11|    printf("%2d回目の実行です\n", 11 - i);
 12|    i--;
 13|    goto START;
 14|  }
 15|  return 0;
 16|}

実行結果

 1回目の実行です
 2回目の実行です
 3回目の実行です
 4回目の実行です
 5回目の実行です
 6回目の実行です
 7回目の実行です
 8回目の実行です
 9回目の実行です
10回目の実行です


goto 文は、C言語では大変嫌われ者です。これを多用すると非常に分かりにくいプログラムとなりあす。

ただ、goto 文で書くと非常にすっきり場合もあります。二重ループから一気に外に出たいときなど、goto 文は重宝します。

Chapter4 @ C言語目録 @ HomeWork List @ 昭亮's Homepage