0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

科技绿洲 来源:网络整理 作者:网络整理 2023-11-30 14:26 次阅读

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()括号中能放置的类型的详细说明,希望能对您有所帮助。

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

    关注

    1

    文章

    516

    浏览量

    57576
  • 程序
    +关注

    关注

    114

    文章

    3631

    浏览量

    79584
  • 字符
    +关注

    关注

    0

    文章

    229

    浏览量

    24896
  • 代码
    +关注

    关注

    30

    文章

    4557

    浏览量

    66859
收藏 人收藏

    评论

    相关推荐

    shell的各种括号的使用方法 linux基础学习

    Linux中小括号()和大括号{}都是对其中的一串命令进行执行,但有一定的区别,其具体含义如下:( ):括号内的命令会在一个子shell执行(( )):将
    发表于 01-16 14:21

    IAR如何设置大括号的颜色?

    在IAR中选中一边大括号,另一边会显示出来,但是现在是灰色的,不明显,怎么修改这个大括号的颜色呢,在tool->options->editor没有找到相关的设置啊?
    发表于 08-19 06:55

    Linux内核编码大括号和空格的放置

    第三章:大括号和空格的放置 C语言风格另外一个常见问题是大括号的放置。和缩进大小不同,选择或弃用某种放置策略并没有多少技术上的原因,不过首选的方式,就像Kernighan和Ritchie展示给我
    发表于 05-10 05:39

    Linux括号有什么用

    ,发现了$(cmd)结构,便将$(cmd)的cmd执行一次,得到其标准输出,再将此输出放到原来命令。此形式要注意使用的Shell类型。 双小括号(())1)省略”$“进行算术运算,同时支持在
    发表于 07-11 07:40

    LabVIEW提取括号内的内容

    请问如何提取字符串括号内的内容啊,括号里面还有括号比如:今天(天气(真的)很好,(你)想出去)走走吗?提出出来:(天气(真的)很好,(你)想出去)
    发表于 04-22 14:04

    怎么选择合适的运输入类型

      工程师要怎么选择合适的运输入类型?平常工作输入器件类型有什么了? 大牛知道不同类型
    发表于 03-05 06:19

    ARM汇编括号是什么意思

    ARM汇编括号是什么意思 比如下面的例子括号是什么作用呀[ PLLONSTARTldr r0,=PLLCONldr r1,=((0x
    发表于 11-09 15:11

    括号在STM32引出线的含义是什么?

    我仍在学习 STM32,我知道斜杠表示多个端口连接到同一个引脚(例如 PB7/PB8),但是方括号在 STM32 引出线的含义是什么?破折号?
    发表于 12-07 08:57

    ARM汇编括号是什么意思呢?

    ARM汇编括号是什么意思 比如下面的例子括号是什么作用呀[ PLLONSTARTldr r0,=PLLCONldr r1,=((0x
    发表于 02-24 15:21

    51单片机实战教程之C语言基础(九 switch语句)

    ; ....... default: 语句或语句块 break;} 执行到switch语句时,先将switch后面圆括号中表达式的值与花括号中cas
    发表于 11-20 20:51 11次下载
    51单片机实战教程之C语言基础(九 <b class='flag-5'>switch</b>语句)

    ARRAY类型变量的赋值

    用数组名后跟在方括号内的适当的索引值来寻地数组的单个元素。每维一个索引,他们用逗号分开并处于同一方括号内。索引必须是数据类型INT的算术表达式。
    的头像 发表于 07-12 10:55 1071次阅读

    C语言switch多分支注意事项

    switch后面括号内的“表达式”,其值的类型应为整数类型,包括字符型。 * switch下面的花括号
    的头像 发表于 03-09 11:07 477次阅读

    c语言switch后面括号怎么写

    块 } switch语句的括号中,expression表示需要进行比较的表达式,可以是常数、变量或者表达式。 在括号内的expression将会与每个case语句后的常量进行比较,如果匹配成功,则执行相应
    的头像 发表于 11-30 14:24 1176次阅读

    switch括号中可以写哪些条件

    switch括号中,可以写以下类型的条件: 整数类型:可以写整数常量、整数变量或整数表达式作为条件。例如:switch(x),其中x可以是
    的头像 发表于 11-30 14:28 1579次阅读

    switch括号里可以有几个变量

    在C语言中,switch语句用于根据表达式的值选择不同的代码块来执行。在switch语句的括号内,可以有一个整型或字符型的表达式。 switch语句的语法如下:
    的头像 发表于 11-30 14:31 394次阅读