C++ continue文完全ガイド:ループ制御の実例とベストプラクティス
C++ continue 文をマスターする
このガイドでは、C++ループにおける continue 文の仕組みを、for、while、ネストループの明確な実例とともに解説します。
C++プログラミングにおいて、continue キーワードは、現在の反復の残りコードをスキップし、次のパスのためにループ条件や更新式を即座に評価するよう指示します。
構文はシンプルです:
continue;
continue に入る前に以下を理解しておいてください:
- C++
forループ - C++
if/else文 - C++
whileループ
C++ での continue の動作

実例 1: for ループでの continue 使用
for ループでは、continue は現在の反復をバイパスし、直接更新式にジャンプします。
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <= 5; ++i) {
if (i == 3) {
continue; // i が 3 のとき出力をスキップ
}
cout << i << endl;
}
return 0;
}
出力
1 2 4 5
解説:
iが 3 のとき、continueがcout文をスキップ- ループは
iを 4 にインクリメントし、次の反復へ進む - 結果として 1, 2, 4, 5 のみが出力される
continue は条件ロジックと組み合わせると最も効果的です。実例 2: while ループでの continue 使用
while ループでは、continue は制御をループの条件チェックに戻します。
#include <iostream>
using namespace std;
int main() {
int sum = 0, number = 0;
while (number >= 0) {
sum += number; // 正の数を累積
cout << "Enter a number: ";
cin >> number;
if (number > 50) {
cout << "The number is greater than 50 and won't be calculated." << endl;
number = 0; // 再プロンプトのためリセット
continue; // このループサイクルの残りをスキップ
}
}
cout << "The sum is " << sum << endl;
return 0;
}
実行例
Enter a number: 12 Enter a number: 0 Enter a number: 2 Enter a number: 30 Enter a number: 50 Enter a number: 56 The number is greater than 50 and won't be calculated. Enter a number: 5 Enter a number: -3 The sum is 99
重要ポイント:
- 50より大きい数値で
continueが発動し、加算をスキップして再プロンプト - 負の入力でループ終了
do…while ループにも適用されます。ネストされたループでの continue 使用
ネストされたループ内に配置された場合、continue は最も内側のループのみに影響します。
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <= 3; ++i) {
for (int j = 1; j <= 3; ++j) {
if (j == 2) {
continue; // この i に対して j == 2 をスキップ
}
cout << "i = " << i << ", j = " << j << endl;
}
}
return 0;
}
出力
i = 1, j = 1 i = 1, j = 3 i = 2, j = 1 i = 2, j = 3 i = 3, j = 1 i = 3, j = 3
continue 文は j == 2 の内側ループ反復をスキップし、次の j の値へジャンプします。
break はループ全体を抜けますが、continue は現在の反復のみをスキップします。C言語
- C# 条件分岐をマスターする:if、if-else、if-else if、ネストした if 文
- C# switch 文をマスターする:構文、例、ベストプラクティス
- C# break 文:使い方とタイミングを徹底解説
- C# continue 文をマスターする:ループ反復を効果的にスキップする方法
- C++型変換完全ガイド:暗黙・明示変換とキャスト技法
- C++演算子完全ガイド:算術・代入・関係・論理・ビット演算子と実例
- C++コメント完全ガイド:読みやすく保守しやすいコードのためのベストプラクティス
- C++条件分岐完全ガイド:if、if-else、ネストされたif-elseの仕組みと実例
- C++ while/do-whileループ完全ガイド:繰り返し処理をマスターする
- C++クラステンプレート完全ガイド:実践的なジェネリックプログラミング
- C++ switch文をマスター:構文、使い方、実践例