switch語句的用法:http://c.biancheng.net/cpp/html/39.html
switch(表達式){
case 常量表達式1: 語句1;
case 常量表達式2: 語句2;
…
case 常量表達式n: 語句n;
default: 語句n+1;
}
其語義是:計算表達式的值。 並逐個與其后的常量表達式值相比較,當表達式的值與某個常量表達式的值相等時, 即執行其后的語句,然后不再進行判斷,繼續執行后面所有case后的語句。如表達式的值與所有case后的常量表達式均不相同時,則執行default后的語句。
重點:
1.在switch語句中,“case 常量表達式”只相當於一個語句標號, 表達式的值和某標號相等則轉向該標號處開始執行,但不能在執行完該標號的語句后自動跳出整個switch 語句,所以出現了繼續執行所有后面case語句的情況。 這是與前面介紹的if語句完全不同的,應特別注意。switch中的break;就有點相當於if中的花括號{}
2.switch只針對基本數據類型使用,即switch后面括號內的表達式,其值得類型應為整數類型(包括字符型),也就是(int,char,枚舉,bool),對於其他類型(如浮點型),應該考慮其他條件控制語句例如if等。switch的表達式和常量表達式不可以是條件表達式啥的.
3.在case后,允許有多個語句,可以不用{}括起來