C++ switch
C++ Switch 语句
使用 switch 语句可以选择要执行的多个代码块之一。
语法
switch(expression) {
case x:
// 代码块
break;
case y:
// 代码块
break;
default:
// 代码块
}
它是这样工作的:
switch表达式被评估一次。- 表达式的值与每个
case的值进行比较。 - 如果找到匹配项,则执行相关联的代码块。
break和default关键字是可选的,将在本章后面介绍。
下面的例子使用工作日编号来计算工作日名称:
实例
int day = 4;
switch (day) {
case 1:
cout << "Monday";
break;
case 2:
cout << "Tuesday";
break;
case 3:
cout << "Wednesday";
break;
case 4:
cout << "Thursday";
break;
case 5:
cout << "Friday";
break;
case 6:
cout << "Saturday";
break;
case 7:
cout << "Sunday";
break;
}
// 删除 "Thursday" (day 4)
break 关键字
当 C++ 到达 break 关键字时,它会跳出 switch 块。
这将停止块内更多代码和 case 测试的执行。
当找到匹配项并且完成任务时,就是休息的时候了。无需进行更多测试。
提示:break 可以节省大量执行时间,因为它会“忽略” switch 块中剩余的所有代码的执行。
default 关键字
default 关键字指定在没有 case 匹配时要运行的某些代码:
实例
int day = 4;
switch (day) {
case 6:
cout << "今天是星期六";
break;
case 7:
cout << "今天是星期日";
break;
default:
cout << "期待周末";
}
// 输出 "期待周末"
在这个例子中,由于 day 的值是 4,与任何 case 都不匹配,因此执行 default 代码块。如果删除 default 部分并且 day 的值不匹配任何 case,则 switch 语句将不会输出任何内容。