Switch
2015-08-31 20:29
507 查看
Switch
switch表达式
switch(表达式) { case 常量 : 语句; break; case 常量 : 语句; break; ... default : 语句; break;(default放在最后是,此break可省略) }
switch语句注意点:
Switch的条件表达式必须是返回整数的表达式, 也就是说()中只能放整数;或者写能够转换为整数的类型也可以, 例如char, 因为char类型可以转换为int类型, 所以写char也可以;switch中default可以随便放,总会最后执行,若放在case前.那么break将不能省略,否则会出现穿透问题;
switch在结构完整的情况下比if效率高;
巧用穿透,提高效率,例如:
switch(monthValue) { case 12: case 1: case 2: printf("您输入的月份为:冬季"); break; case 3: case 4: case 5: printf("您输入的月份为:春季"); break; case 6: case 7: case 8: printf("您输入的月份为:夏季"); break; case 9: case 10: case 11: printf("您输入的月份为:秋季"); break; default: printf("您输入的月份有误:请输入1 ~ 12 之间的数值"); break; }
switch中case的取值问题:
case后面只能放返回值是整数的表达式或者整数, 或者能够转换为整数的类型;case的取值不能重复;
case后面不能放变量;(因为系统在编译的时候会对Switch后面所有的case进行优化,会根据case后面的常量值,生成一张取值表);
swith中default的位置问题:
Switch中的default可以随便放无论default写到什么地方,它都会最后执行(只有前面所有的case都不满足的情况才会执行);
只要某一个case满足,那么后面所有的case和default都会失效;同理:只要default满足, 那么所有的case都会失效;
相关文章推荐
- PHP8新特性之match表达式
- 三个有用的 Switch 命令
- Lua和C语言的交互详解
- 关于C语言中参数的传值问题
- 简要对比C语言中三个用于退出进程的函数
- 深入C++中API的问题详解
- 基于C语言string函数的详解
- C语言内存对齐实例详解
- 使用C语言判断英文字符大小写的方法
- c语言实现的带通配符匹配算法
- C语言实现顺序表基本操作汇总
- C语言中计算正弦的相关函数总结
- 使用C语言详解霍夫曼树数据结构
- 探讨C语言的那些小秘密之断言
- C语言实现BMP转换JPG的方法
- 深入探讨C语言中局部变量与全局变量在内存中的存放位置
- C语言查找数组里数字重复次数的方法
- C语言泛型编程实例教程
- C语言中使用lex统计文本文件字符数
- 在C语言中转换时间的基本方法介绍