一.switch的一般形式
switch(表达式)
{
case常量表达式1:语句组1;
...
case常量表达式n:语句组n;
default语句组n+1;
}
二.使用注意:
1.switch后表达式只能为整型,字符型,或者枚举型;且case之后的常量表达式数据类型必须与其保持一致。
2.当表达式的值与case之后的一个常量表达式相等时(每个case之后的常量表达式必须不同),执行该case及其以后的语句,反之执行default之后的语句,再跳出(default语句可以没有,则当值无匹配时直接越过switch语句)。
3.由2,则case多和break语句套用,即只执行一次对应的case语句之后的语句组就跳出switch语句(default语句放在最末尾时,它之后的break一般省略)。
三.特殊:
1.在每个分支都有break语句的情况下(包括default),它们出现的次序可以任意不固定。
2.多个case可以共用一组执行语句:
case'A': case'B': case'C':cout<<"ok"<<endl;
3.switch语句可以嵌套,case与default与包含它的最小的switch相联系:
以下例子中两组case1和2是不同的。
int i,j; switch(i) { case1: case2: switch(j) { case1: case2: } }