C++のswitch文
は、ある変数の値に応じて複数の処理を分岐させたい場合に便利な構文です。本記事では、switch
文の基本的な使い方と注意点について、サンプルコードとともに丁寧に解説いたします。
目次
サンプルコード(C++)
以下のコードでは、入力された数値に応じて異なるメッセージを表示するswitch
文の基本的な構成を紹介しております。
#include <iostream>
using namespace std;
int main()
{
int code;
cout << "コード番号を入力してください。" << endl;
cin >> code;
switch(code) {
case 100:
cout << "コード100が入力されました。" << endl;
break;
case 200:
cout << "コード200が入力されました。" << endl;
break;
default:
cout << "100または200を入力してください。" << endl;
break;
}
return 0;
}
コードの解説
このプログラムでは、次のような処理を行っております。
code
という整数型変数にユーザーからの入力を受け取ります。switch
文により、入力された値が100
、200
、それ以外のいずれであるかを判定します。- 各条件に応じて異なるメッセージを表示します。
break
文があることで、該当する処理を実行した後にswitch
文から抜けるようになっています。
switch文のポイント
switch
文は、**整数値や列挙型(enum)**など、離散的な値の判定に向いています。- 各
case
の末尾にはbreak
をつけるのが一般的です。これを省略すると、次のcase
へ**処理がそのまま流れてしまう(フォールスルー)**ため注意が必要です。 default
は、どのcase
にも該当しなかった場合に実行される処理です。省略することもできますが、エラーメッセージなどを出力したいときに有用です。
if文との使い分け
- 比較演算子(<, >, ==など)を使った複雑な条件判定には
if文
が適しています。 - 複数の特定の値に対して処理を分けるような単純な条件分岐には、
switch文
の方がコードが簡潔になります。
まとめ
switch
文は、変数の値に応じた分岐処理を効率的に記述できる構文です。case
ごとに処理を分け、break
文で抜けるようにするのが基本です。default
を活用することで、想定外の入力にも対応できます。
C++の条件分岐を理解するうえで、switch
文の役割は重要です。特に「明確な値ごとの処理」が必要な場面では、コードの可読性が向上しますので、ぜひ実践に取り入れてみてください。