C言語のswitch文の使い方は?
C言語のswitch文は多重分岐選択構造で、ある式の値に応じて対応するコードブロックを実行する。その基本的な構文形式は以下の通りです。
switch (expression) {
case constant1:
statement1;
break;
case constant2:
statement2;
break;
...
default:
statementN;
}
switch文は以下のように動作します。
- 各ケースの後に書かれている定数と、式(expression)の値が比較される。
- 一致する定数が見つかった場合は対応するコードブロックが実行されます。
- コードブロックの実行が終わった後、break ステートメントを使用して switch ステートメントの実行を終了します。
- 定数が一致しない場合、default コードブロックのステートメントは実行されます(存在する場合)。
- デフォルトのコードブロックが指定されていない、またはデフォルトのコードブロックが空の場合、switch文は終了します。
各ケースの後に続く定数は整数定数か文字定数で、かつ重複は禁止となっていることに注意してください。また、expressionの値も整数型か文字型でなければなりません。
なお、switch文ではfall-throughという機能がサポートされており、あるcaseでbreak文を使用しなかった場合、次のcase以降のコードブロックも実行されます。これにより場合によってはコードの記述が簡略化できますが、ロジックエラーが発生しやすくなるので注意して利用してください。