continue文は、プログラミング言語のループで用いられる文である。

文法 Cおよびそれに類する言語の場合 C言語、C++、Java、JavaScriptなどでは、for文、while文、do-while文の中で使うことができる。Perlではキーワードが少し異なっており、continueに相当するのはnextで、continueは違う機能のためのものであるPerlでは、continueにブロックが引き続いている場合「条件文が再評価される直前に常に実行される」コードとなり、すなわち「C における for ループの 3 番目の部分と同様」な働きとなる。"http://perldoc.jp/func/continue"。

C言語においては、continue文はループの内部(「ループ本体」の中)にのみ現れることができ、実行されると「それを囲む最も内側の繰返し文のループ継続部,すなわちループ本体の終わりへの分岐を引き起こす。」(JIS X 3010-1993、§6.6.6.2)。

do-while文以外では、その分岐(ジャンプ)先のループ本体の終わりから、そのままループによって先頭に飛び、繰返しのための処理などが行われることになる。do-while文の場合は、ループ本体の終わりにすぐ繰返しの条件判定があるので、ただちに繰返しの条件判定となる。

が、あくまで仕様は以上のようなものである。

例 C言語 (C99) による例を示す。制御の流れを視覚化するため、for文の条件式および更新式の中でコンマ演算子を使ってprintf関数の評価結果を無視している。 for (int i = 0; printf("condition[%d]\n", i), i < 5; printf("update[%d]\n", i), ++i) { if (i % 2 == 0) { printf("%d is even.\n", i); continue; // ループ本体中の以降の処理は実行されない。

printf("%d is odd.\n", i); }

結果: condition 0 is even. update condition 1 is odd. update condition 2 is even. update condition 3 is odd. update condition 4 is even. update condition

脚注

関連項目 for文 while文

カテゴリ:コンピュータ言語の文 カテゴリ:制御構造