C++のswitch文の使い方を完全ガイド!初心者でもわかる条件分岐とbreak・default
生徒
「C++で、条件がたくさんあるときはどうやって分けるんですか?」
先生
「そういう場合は、switch文を使うとスッキリ書けます。」
生徒
「if文と何が違うんですか?」
先生
「switch文は、決まった値ごとに処理を分けたいときに便利なんです。」
1. switch文とは?初心者向けに超やさしく解説
C++のswitch文は、条件分岐を行うための基本構文の一つです。 if文と同じく、条件によって処理を変えるために使います。
switch文は「この値ならこれ」「別の値ならあれ」と、 あらかじめ決まったパターンで分岐したいときに向いています。 リモコンのボタンを押したら決まった動作をする、というイメージです。
2. switch文の基本的な書き方
switch文は、調べたい値を一つ指定し、その値ごとに処理を書いていきます。 それぞれの分かれ道をcaseと呼びます。
int number = 2;
switch (number) {
case 1:
std::cout << "数字は1です" << std::endl;
break;
case 2:
std::cout << "数字は2です" << std::endl;
break;
}
数字は2です
この例では、numberの中身が2なので、「数字は2です」が表示されます。 caseは「もしこの値だったら」という意味で使われます。
3. breakの役割をしっかり理解しよう
breakは、switch文の処理をそこで終わらせるための命令です。 これを書かないと、次のcaseまで続けて実行されてしまいます。
日常生活で例えると、分かれ道で目的地に着いたら、 それ以上進まずに止まるイメージです。
int value = 1;
switch (value) {
case 1:
std::cout << "一番目です" << std::endl;
break;
case 2:
std::cout << "二番目です" << std::endl;
break;
}
breakを書くことで、意図しない動作を防ぐことができます。 switch文を書くときは、基本的にbreakを忘れないようにしましょう。
4. defaultの使い方と意味
defaultは、どのcaseにも当てはまらなかった場合に実行される処理です。 「それ以外すべて」をまとめて扱うために使います。
人間で言えば「どれにも当てはまらなかったらこれをする」という保険のような存在です。
int day = 5;
switch (day) {
case 1:
std::cout << "月曜日" << std::endl;
break;
case 2:
std::cout << "火曜日" << std::endl;
break;
default:
std::cout << "その他の日です" << std::endl;
break;
}
その他の日です
defaultを書いておくことで、予想外の値が入っても安全に処理できます。
5. switch文が向いている場面
switch文は、数字や決まった値ごとに処理を分けたいときに活躍します。 メニュー番号、曜日、選択肢などを扱う場面でよく使われます。
条件が多くなっても、コードが読みやすくなるのが大きなメリットです。 C++の基本構文として、初心者のうちにしっかり慣れておきたい考え方です。
6. switch文を使うときの注意点
switch文では、条件に使える型が限られています。 主に整数値を扱う場面で使う構文だと覚えておくと安心です。
また、breakの書き忘れはよくあるミスです。 一つ一つのcaseの終わりを意識しながら書くことが大切です。