case

読み:ケイス
読み:ケース
外語:case 英語
発音:kéis 英語
品詞:名詞

C/C++/Java/C#などの予約語の一つ。

目次

switch文の分岐先を示すラベルを指定する。

DelphiなどのPascal系の言語では、case文自体がswitch文相当の分岐文として存在する。

C/C++

通常の構文は、switch文中に書き、caseでラベルを指定する。

switch (var)
{
    case 0:
        printf("var is 0\n");
        break;
    case 1:
        printf("var is 1\n");
        break;
    default:
        printf("var is the others\n");
        break;
}

switch文が実際にすることは、マッチするcaseラベルへのジャンプであるため、あるcaseラベルに分岐したあと、何もしなければ後続するcaseラベルの処理も続けて実行される。これを回避するためにbreak文がある。

また、いずれのcaseにも該当しない条件を指定するために、defaultラベルが用意されている。

GCC拡張

標準規格では、case文のcaseに指定できる値はただ一つだが、GCCではPascalのように値の範囲を指定することができる。

switch (var)
{
    case 0...10:
        printf("var is 0 to 10\n");
        break;
    case 11...100:
        printf("var is 11 to 100\n");
        break;
    default:
        printf("var is the others\n");
        break;
}

clang 3.0では未対応である。

関連する用語
switch
break
C
C++
Java
fall through

コメントなどを投稿するフォームは、日本語対応時のみ表示されます


KisoDic通信用語の基礎知識検索システム WDIC Explorer Version 7.04a (27-May-2022)
Search System : Copyright © Mirai corporation
Dictionary : Copyright © WDIC Creators club