C言語では、for文やwhile文などのループ処理の途中で、
処理の流れを変えたい場面があります。
そのときに使うのが、
- break
- continue
です。
一見似ていますが、動きはまったく違うのでしっかり理解しておきましょう。
目次
breakとcontinueとは
- break:ループを終了する
- continue:その回の処理をスキップして次へ進む
エンジニアくんbreakとcontinueって似てない?



途中で止めるやつですよね?



breakは“完全に終了”、continueは“その回だけスキップ”だよ



なるほど、全然違いますね!
C言語文法解説シリーズ
本記事は「C言語文法解説シリーズ」の1つです。
C言語の文法を、組み込み開発の視点も交えて解説しています。
C言語文法解説シリーズ一覧はこちら
あわせて読みたい




C言語文法一覧まとめ|修飾子・型・ポインタ・関数・制御文【解説シリーズ】
C言語文法解説シリーズ C言語はシンプルな言語ですが、修飾子・型・ポインタ・関数・制御文など、理解しておくべき文法が多くあります。 このシリーズでは、C言語の文法…
ループ処理
breakとcontinueはループ処理で使われます。
C言語のループ処理にはfor、while、do-whileがあり、詳細はこちらの記事で解説しています。
あわせて読みたい




for文とは?C言語の繰り返し処理を初心者でも理解できるように解説
C言語では、同じ処理を何度も繰り返したい場面がよくあります。 例えば: 配列の要素を順番に処理する 1〜100までの数値を表示する 条件を満たすまで処理を繰り返す こ…
あわせて読みたい




while文とは?C言語の繰り返し処理をfor文との違いも含めてわかりやすく解説
C言語では、繰り返し処理を行う方法がいくつかあります。 その中でも while文 は、「条件を満たしている間だけ処理を続ける」構文です。 while文とは while文とは、条件…
あわせて読みたい




do-while文とは?C言語の繰り返し処理をwhile文との違いも含めてわかりやすく解説
C言語のループ処理には、 for文 while文 do-while文 の3種類があります。 その中でも do-while文 は、必ず1回は処理が実行されるループ という特徴があります。 do-whil…
goto文でもループ処理は可能ですが、現在はあまり使われません。
あわせて読みたい




goto文とは?C言語で非推奨と言われる理由と使うべきでない理由を解説
goto文 概要 C言語には、処理の流れを強制的に移動させる goto文 があります。 しかし現在では、 👉 基本的に使うべきではない構文 とされています。 なぜそう言われる…
breakとは
breakは、ループを途中で終了するための文です。
基本例
C
for (int i = 0; i < 10; i++) {
if (i == 5)
break;
printf("%d\n", i);
}実行結果
C
0
1
2
3
4⭐ 1ループごとの動き(break)
i = 0〜4
- 条件OK → 実行される
i = 5
- if (i == 5) → true
👉 break発動 → ループ終了
💡 ポイント
- breakが実行された瞬間にループを抜ける
- それ以降の処理は一切実行されない
continueとは
continueは、その回の処理だけスキップする文です。
基本例
C
for (int i = 0; i < 5; i++) {
if (i == 2)
continue;
printf("%d\n", i);
}実行結果
C
0
1
3
4⭐ 1ループごとの動き(continue)
i = 0,1
- 通常実行
i = 2
- continue発動
👉 printfがスキップされる
👉 そのまま次のループへ
💡 ポイント
- ループ自体は終わらない
- 「その回だけ処理を飛ばす」
🎯 breakとcontinueの違い(重要)
| break | continue | |
|---|---|---|
| 動き | ループ終了 | 次のループへ |
| 処理 | 完全停止 | 一部スキップ |
| よく使う場面 | 条件成立で終了 | 特定条件を無視 |
⚠️ よくある勘違い
👉 continueは「途中終了」ではない
C
for (int i = 0; i < 5; i++) {
if (i == 2)
continue;
printf("%d\n", i);
}👉 i=2のときだけスキップされるだけ
🔥 while文での動き(ここ重要)
break
C
int i = 0;
while (1) {
if (i == 3)
break;
printf("%d\n", i);
i++;
}👉 条件でループ終了
continue(注意)
C
int i = 0;
while (i < 5)
{
i++;
if (i == 3)
continue;
printf("%d\n", i);
}👉 continueするとそのまま条件へ戻る
⚠️ よくあるミス(実務でも多い)
無限ループになるパターン
C
int i = 0;
while (i < 5) {
if (i == 2)
continue;
i++;
}👉 iが2で止まる → 無限ループ
まとめ
- breakはループを終了する
- continueはその回だけスキップする
- whileでは特に無限ループに注意
- 使い分けができるとコードが分かりやすくなる
この記事が参考になった方へ
制御構文を含むC言語の基本文法をこちらの記事で整理しています。
あわせて読みたい




C言語文法一覧まとめ|修飾子・型・ポインタ・関数・制御文【解説シリーズ】
C言語文法解説シリーズ C言語はシンプルな言語ですが、修飾子・型・ポインタ・関数・制御文など、理解しておくべき文法が多くあります。 このシリーズでは、C言語の文法…
技術に関するご相談・開発・自動化ツール作成・記事執筆などのご依頼も承っています。
小さなご相談からでもお気軽にご連絡ください。

コメント