switch语句的主要功能(switch语句例子)
哈喽,大家好~~~我是小编田甜,关于switch语句的主要功能,switch语句例子这个很多人还不知道,那么现在让田甜带着大家一起来看看吧!
1、switch(x) { default: if(prime(x)) { case 2: case 3: case 5: case 7: process_prime(x); } else { case 4: case 6: case 8: case 9: case 10: process_composite(x); } } 你能说出它如何执行吗? switch语句的格式为: switch(条件)语句 其中,条件的类型可以是整数类型,枚举类型,或者类类型(但该类需要有单一的转换到整数类型或(可以是字符类型,但不能是浮点类型、字符串、指针类型等),语句部分不一定非得是一条复合语句。
2、因此,switch("123"[2]+(int)3.1);是条合法的switch语句,switch(j)case 5:i++;也是条合法的switch语句。
3、如果switch的语句部分是一条非复合语句,则其内定义的变量作用域,效果上等同于该条语句加上了{}。
4、如int i=3;switch(i)int i=4;,相当于int i=3;switch(i){int i=4;},因此这并不会导致同一局部域下的重复定义错误。
5、 case标号后为一个整数类型的常量表达式,因此int i=3;switch(i){case 3:;}合法,而int i=3;switch(3){case i:;}不合法,因为case i:的i不是个静态表达式。
6、如果将int i=3;换成const int i=3;则后者在C++中就合法了,但在C中仍然不合法。
7、原因是C和C++对const的处理不同,在C中,const限定的量是不能直接去修改的,但它本身并不是常量表达式;在C++中,const限定的量,如果其值能在编译时确定,则其可出现在必须使用常量表达式之处。
8、 同一个switch的各个case标号的值不能够相互重复。
9、要注意的是,case标号在实现中是有上限的:C89标准要求至少257个,这保证了ASCII被switch列举一遍。
10、 虽然要求case标号是常量表达式,看起来似乎不是很零活方便(比如对比VB的Select Case),但是这样的设计可以保证更高的效率,而效率则是C和C++最为看重的因素。
11、因为case标号的值是编译时可确定的整数类型,又因为其不可有重复,因此编译器可以进行优化。
12、 最后要强调的问题是,C++中goto不能从前往后跳过变量定义,因此switch内出现的变量定义语句,最好放在复合语句{}中包起来。
本文分享完毕,希望对大家有所帮助哦。
免责声明:本文由用户上传,与本网站立场无关。财经信息仅供读者参考,并不构成投资建议。投资者据此操作,风险自担。 如有侵权请联系删除!
-
奔驰GLE作为豪华SUV市场中的佼佼者,凭借其卓越的性能、豪华的内饰以及宽敞的空间,吸引了众多消费者的关注。...浏览全文>>
-
在2025年,安徽阜阳地区的帕萨特新能源汽车市场表现非常活跃。作为一款备受关注的新能源车型,帕萨特新能源凭...浏览全文>>
-
近日,滁州地区的大众汽车经销商传来好消息:备受瞩目的2025款T-ROC探歌正式上市,并且以极具竞争力的价格吸引...浏览全文>>
-
在选择一款新能源汽车时,了解其价格和配置是非常重要的一步。安徽淮南地区的长安启源E07作为2024款的新车型,...浏览全文>>
-
阜阳长安启源A05作为长安汽车旗下的全新车型,自推出以来便凭借其独特的设计风格和丰富的配置吸引了众多消费者...浏览全文>>
-
阜阳长安启源A07作为一款备受瞩目的新能源车型,以其豪华配置和亲民的价格在市场上引起了广泛关注。这款车型不...浏览全文>>
-
安徽淮南威然2024款价格及配置详解随着汽车市场的不断更新换代,上汽大众旗下的MPV车型——威然(Viloran)凭...浏览全文>>
-
QQ多米新车报价2025款,买车省钱秘籍随着汽车市场的不断发展,消费者在选购车辆时不仅关注车型的性能和配置,...浏览全文>>
-
滁州途观X 2024款最新价格及买车省钱秘籍随着汽车市场的不断发展,大众途观X作为一款兼具时尚与性能的中型SUV...浏览全文>>
-
随着汽车市场的不断发展,大众蔚揽以其优雅的设计和卓越的性能赢得了众多消费者的青睐。作为一款兼具实用性和...浏览全文>>
- Nvidia DLSS 4 有望将游戏性能提高 8 倍
- 人工智能在预测自身免疫性疾病进展方面显示出良好的前景
- 心理物理实验揭示皮肤水分感知是如何改变的
- 科茨沃尔德公司庆祝圣诞节圆满成功
- 南法纳姆学校被评为萨里郡表现最好的小学
- 约克区九所小学将削减招生人数
- 松下新款电动汽车电池为 Lucid Gravity 带来 450 英里续航里程
- 泰国旅游呈现新趋势
- 研究人员找到在细胞水平上饿死前列腺癌肿瘤的新方法
- 领先的人工智能聊天机器人在测试中表现出类似痴呆症的认知能力下降
- 庞大的 Project Zomboid build 42 终于可以玩了
- Steam Replay 回归向您展示 2024 年您玩得最多的 PC 游戏
- Jollyes 推出强化的人才支持和招聘措施
- Karen Millen 与 Simon Harrison 共同推出全新高级珠宝系列
- 奇瑞风云A8L电动轿车刷新续航里程世界纪录
- 虚拟艺术家将别克 Cascada 带回 2026 款车型
- OnePlus 宣布推出新计划解决绿线问题
- OnePlus Watch 3 将拥有更大的电池和更薄的机身
- 研究人员发现可变剪接与自身免疫性疾病遗传之间的细胞类型特异性联系
- 科学家确定脑细胞类型是排尿的主要控制者