switch()括号中能放什么类型

描述

switch()语句是一种用于多分支选择的控制结构,括号中可以放置整数型(int)、字符型(char)以及枚举类型(enum)。在C++语言中,还可以放置整数型常量表达式,例如0, 1, 2等常量。

整数型和字符型是最常见的类型,它们分别表示数值和字符。整数型表示数值,可以是正数、负数或者零。字符型则表示单个字符,可以是字母、数字、标点符号等。

枚举类型是一种用户自定义的数据类型,表示一个可取值的集合。它由关键字enum定义,可以定义多个枚举常量,每个常量使用逗号分隔。例如:

enum Weekday {
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday
};

在switch()语句中,括号中的表达式的值会与每个case后面的常量进行比较,直到找到匹配的常量为止。如果找到匹配的常量,就会执行该case下面的代码块,并且程序会继续执行case后面的代码,直到遇到break语句或者switch()语句结束。如果没有找到匹配的常量,就会执行default语句后面的代码块。

下面是一个示例代码,演示了在switch()语句中使用整数型、字符型和枚举类型:

#include
using namespace std;

int main() {
int num = 2;
char letter = 'B';
enum Weekday day = Tuesday;

switch(num) {
case 1:
cout < < "Number is 1" < < endl;
break;
case 2:
cout < < "Number is 2" < < endl;
break;
default:
cout < < "Number is not 1 or 2" < < endl;
}

switch(letter) {
case 'A':
cout < < "Letter is A" < < endl;
break;
case 'B':
cout < < "Letter is B" < < endl;
break;
default:
cout < < "Letter is not A or B" < < endl;
}

switch(day) {
case Monday:
cout < < "Day is Monday" < < endl;
break;
case Tuesday:
cout < < "Day is Tuesday" < < endl;
break;
default:
cout < < "Day is not Monday or Tuesday" < < endl;
}

return 0;
}

该示例代码中,变量num的值等于2,变量letter的值等于'B',枚举变量day的值等于Tuesday。根据变量的值,分别匹配相应的case,并输出对应的结果。

需要注意的是,switch()中的表达式只能是整数型、字符型和枚举类型,不能是浮点型、字符串类型、布尔型等其他类型。如果需要处理其他类型的数据,可以通过转换或者其他方式将其转为适合的类型,再进行匹配。

以上是关于switch()括号中能放置的类型的详细说明,希望能对您有所帮助。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分