C++中的switch是什么意思

来源:百度知道 编辑:UC知道 时间:2024/06/10 10:09:24
初学C++不知道这东西怎么用的,请高手举个简单的例子~~

switch语句是一种多路判定语句,它测试表达式是否与一些常量整数值中的某一个匹配,并执行相应的分支动作。
switch(表达式){
case 常量表达式: 语句序列
case 常量表达式: 语句序列
default:语句序列
}
每个分支都由一个或多个整数值常量或常量表达式标记,如果有某个分支与表达式的值匹配,则从该分支开始执行。个分支表达式必须互不相同,如果没有哪个分支能匹配表达式,则执行标记为default的分支。default分支是可选的。如果没有default分支也没有其他分支与表达式匹配,则该switch语句不执行任何动作。各分支及default分支的排列次序是任意的。

注意这里要求的是常量表达式,而不能是变量,或者声明为const的变量。

下面通过例子介绍:
void foo( char ch )
{
switch(ch)
{
case '1':
printf("ch = 1");
break;
case '2':
printf("ch = 2");
break;
default:
printf("default");
break;
}
}

调用foo('1');foo('2');foo('3');将分别输入ch = 1, ch = 2, default

和c中的是一样是选择性的语句,例如
int a=3;
swith(a)
{
case1:printf("a=1");break;
case2:printf("a=2");break;
case3:printf("a=3&quo