switch文

ここでは条件分岐の1つであるswitch文を使ってみましょう。
if文 の親戚みたいなものです。

動かしてみよう

では、サンプルコードを動かしてみましょう。
入力値が1,2,それ以外のどれかを表示するプログラムです。
入力欄へ数字を入れた後、実行ボタンを押してください。

解説

switch文の基本的な構文は下記のとおりです。

switch( 変数 )
{
  case 定数1:
    処理1;
    break;
  case 定数2:
    処理2;
    break;
  default:
    処理デフォルト;
    break;
}

switch部分に書かれた変数が定数1なら処理1をやる、というような動作をします。
該当する定数がなかった場合には、defaultに記述された処理をおこないます。

if文との比較

先に示した基本構文をif文で表現すると下記になります。

if( 変数 == 定数1) { 処理1; }
else if( 変数 == 定数2) { 処理2; }
else { 処理デフォルト; }

switch文で実現できる処理はif文でも書けます。
しかし、逆は成り立ちません。

switch文は場合分けに特化したif文の親戚だと思えばよいでしょう。

注意点

break忘れ

switch文では下記のように case の break を書かない記述もできます。

switch( 変数 )
{
  case 定数1:
    処理1;
  case 定数2:
    共通処理;
    break;
  default:
    処理デフォルト;
    break;
}

上記の場合、変数が定数1の時に処理1と共通処理が実行されます。
意図的に使う文には便利ですが、breakの書き忘れによってこのようなソースコードを作ってしまうミスが多いです。

気をつけましょう。

default忘れ

defaultケースは省略可能ですが、基本的には書いた方がよいです。
何も処理しない場合には何もしないことをコードとして明記しておいた方が安全です。

まとめ

まとめです。

  • switch文によって条件分岐が作れます。
  • if文でも同じことができます。
  • breakを忘れないようにしよう。
  • defaultは書くようにしよう。

以上です。
ではまた。

タイトルとURLをコピーしました