/* -*- MaTX -*- * * 【名前】 * switch - 選択 * * 【形式】 * switch (expr) { * case int_1: statements_1; * break; * case int_2: statements_2; * break; * ...................... * case int_n: statements_n; * break; * default: statements_0; * break; * } * Integer expr; * * 【機能説明】 * switch 文は,ある式が複数の値の 1 つと一致するかテストし, * それに応じて分岐する特別の多分岐判断機構である。 * * switch 文は,括弧内の整数式 expr を計算し,その値を全ての * ラベル int_1 〜 int_n と比較する。各 case には,整数定数の式 * でラベルをつける。あるラベルが expr と一致すれば,実行はその * case から始められる。 default のラベルのついた case は,他の * いずれの case も満足されないときに実行される。 * * break 文はスイッチ文から直接抜け出る手段である。C 言語と同様に * case は単にラベルとして働くから,1 つの case 文が終了したのち, * 抜け出すための明示的な動作がなければ,実行は次の case へ移る。 * * 【例題】 * 整数型の変数 num をチェックし,num が -1, 0, 1 * のいずれかのとき,対応する case 文の文字列を表示し, * これらの値のどれとも一致しないとき,default 文が実行される。 * * switch (num) { * case -1: print "minus one\n"; * break; * case 0: print "zero\n"; * break; * case 1: print "plus one\n"; * break; * default: print "other value\n"; * break; * } * * 【関連項目】 * if, else, case, break */