switch语句的控制流程能够一次通过并执行各个case部分。
 就好像:
   switch (color)
  {
  case 1: 
       printf("reds");
       break;
  case 2:
       printf("yellows");
       break;
  case 3:
       printf("blues");
       break;
  default:
       printf("whites");
       break;
  }

 这时就会根据变量color的值,1,2, 3,或者别的,分别打印reds, yellows, blues, whites
 
 假如改动一下代码:
  switch (color)
  {
  case 1: 
       printf("reds");
  case 2:
       printf("yellows");
  case 3:
       printf("blues");
  default:
       printf("whites");
  }
 如果color值为2,程序会答应出yellowsblueswhites, 因为程序的控制流程在执行了第二个printf调用后,会自然地顺序执行下去。
 所以,用switch语句有下列注意点:
 1。每个case语句的结尾都要加break,如果不需要加的,最好加个注释/* Fall through */说明一下,而default后的那个break只是偶的个人习惯而已,
    可以不加的。
  switch (color)
  {
  case 1: 
       printf("reds");
       break;
      case 2:
   /* Fall through */
  case 3:
       printf("blues");
       break;
  default:
       printf("whites");
       break;
  }
 2。不要忘记最后那个default 分支。即使程序真的不需要default 处理,也应该保留语句 default : break; 这样做并非多此一举,而是为了防止别人误以为你忘了default 处理。
 
[Some are referred from <<C Traps and Pitfalls>> and <<High Quality C / C++ Programming Guide>>]

使用switch的注意相关推荐

  1. Go 学习笔记(62)— Go 中 switch 语句中的 switch 表达式和 case 表达式之间的关系

    switch 语句对 switch 表达式的结果类型,以及各个 case 表达式中子表达式的结果类型都是有要求的. 毕竟,在 Go 语言中,只有类型相同的值之间才有可能被允许进行判等操作. 1. sw ...

  2. Java基础Switch和循环控制

    1. switch语句 1.1 分支语句switch语句 格式 switch (表达式) {case 1:语句体1;break;case 2:语句体2;break;...default:语句体n+1; ...

  3. Android switchCompat. 和 Switch

    今天礼拜日,回顾知识点 看到了switchCompat 这里记录下它的简单使用 switchCompat  使用需要导入v7包,一般这个创建项目的时候默认的都用,也就不用关心了 使用呢也很简单 布局 ...

  4. Kotlin 中 switch 写法

    在Kotlin 中并没有switch 操作符 , 取而代之的是when java的写法: int i= 5;switch (i){case 5:System.out.print("5&quo ...

  5. switch case

    1 var v = 2;2 switch (true) {3 case 0:4 alert("值为零");5 break;6 case v > 0 && v ...

  6. C++ 笔记(12)— 判断(if/if...else/switch、条件运算符)

    1. if 语句 C++ 中 if 语句的语法: if (boolean_expression) {// 如果布尔表达式为真将执行的语句 } 如果布尔表达式为 true ,则 if 语句内的代码块将被 ...

  7. Go 学习笔记(8)— 条件语句(if、if...else...、switch、fallthrough)

    Go 语言提供了以下几种条件判断语句: 语句 描述 if 语句 if 语句 由一个布尔表达式后紧跟一个或多个语句组成 if-else 语句 if 语句 后可以使用可选的 else 语句, else 语 ...

  8. 编写函数求两个整数 a 和 b 之间的较大值。要求不能使用if, while, switch, for, ?: 以 及任何的比较语句。...

    本题要求不能使用if, while, switch, for, ?: 以 及任何的比较语句,也就是要求我们不能用常规的方法来判断两个数的大小. 那么按照以往的方法,要判断两个数的大小,应该要将两个数进 ...

  9. C 语言中的 switch 语句 case 后面是否需要加大括号

    事件原由为编辑器的自动缩进,当 case 换行后不自动缩进. 于是在在想可以可否在 case 后面再大括号,让其自动缩进. 查了资料,发现 case 是可以加大括号的,相当于代码块. 而且还有另外一个 ...

  10. switch...case结构

    /* *switch(要判断的数据){ case 值1: ...;break; case 值2: ...;break; case 值3: ...;break; default: ...;break; ...

最新文章

  1. 立体显示与BCN双稳态手性向列相
  2. termcap - 终端功能数据库详解
  3. 5月 PC 浏览器市场份额:Chrome 即将突破 60%
  4. php课程 8-28 php如何绘制生成显示图片
  5. 架构专家高磊:缓存为王——无线缓存架构优化
  6. ML、DL、CNN学习记录2
  7. eja智能压力变送器工作原理_电量变送器是什么?电量变送器工作原理解析
  8. Exchange常见问题大全
  9. 单片机c语言定时器控制流水灯,单片机-定时器流水灯
  10. selenium自动化中停止页面加载
  11. wz框架登录功能详解——demo1
  12. 为什么公司要和商标同步注册?
  13. rest assured
  14. Experimental Class Task 4-1: Pupil Calculator
  15. 打喷嚏的龙(dargon)
  16. 爬虫实战(一)-新版知乎网页分析获取登录url
  17. 阚俊青少机器人_长春中医药大学附属医院、中医学院阚俊明副书记一行调研我校中医学类学生培养工作...
  18. lio linux工具,ISCSI (简体中文)/LIO (简体中文)
  19. 论文翻译-Hamming OCR A Locality Sensitive Hashing Neural Network for Scene Text Recognition
  20. 如何在自己的电脑开服务器(内网穿透)

热门文章

  1. 五年级上册计算机教案闽教版,小学信息技术闽教版五年级上册第7课 认识因特网教案设计...
  2. HUD - 1873
  3. HDU 1873 优先队列 Java版
  4. Android 人脸识别拍照demo
  5. swift方法顺序 不成文规定
  6. 爬取阿里云物联网平台设备的物模型数据
  7. 集线器、路由器、网桥(桥接器)、网关、网线、交换机、中继器(转发器)、网卡工作在哪一层
  8. 一个基于QT的解析interproscan结果的C++成员函数
  9. 解决CMD命令行窗口不显示颜色问题python
  10. 图像形态学处理(击中击不中变换 ) 终于搞懂了