C语言里使用case要注意的问题

  1. 一般情况要加上break;
  2. case后面必须为整型数字或者字符类型

case后面的语句不需要加大括号,只要别忘了break就行。不过有的编程规范上会建议用大括号把case后面的语句括起来。 
你说的“不能通过编译”,可能是下面这个原因。C/C++里规定,不能在case语句里定义局部变量。例如:

int a = 2;switch (a){case 1:int c = 10;break;case 2:break;default:break;}

编译就会出错,原因是在case 1里定义了局部变量c。 
而C/C++还有一个很有意思的规定,用{}包括的语句,认为是一个”语句块“,而在语句块里就能想干什么就干什么。 
比如:

switch (a){case 1:{int c = 10;break;}case 2:break;default:break;}

这样就能通过编译了。

C语言里case后加不加括号问题相关推荐

  1. php switch 如果不在case后加break会怎么样

    <?php /*** Created by PhpStorm.* User: 1* Date: 2017-11-09* Time: 19:51*/$text="red"; s ...

  2. C#new一个对象后加花括号的用法

    C#new一个对象后加花括号的用法 namespace test {class MathTeacher{public int i = 0;public int j = 1;public int num ...

  3. c语言:宏里面参数不加括号容易出错,在使用时尽量加括号及举例

    宏里面参数不加括号容易出错,在使用时尽量加括号 程序1: #include<stdio.h> #define SQARE(X) X*X int main() { int  n = 10; ...

  4. c语言case后加什么,c++ switch语句的使用(case 后面可以跟N个语句)

    switch语句在处理多分支语句时是一种清晰结构(相比于一系列的if else if ...), 在一般书上的讲解时会给出如下的一般形式: switch(表达式){ case 常量表达式1: 语句1; ...

  5. c语言case后加3 5,10.程序流程控制:switch-case

    switch(表达式){ case 常量1: 语句1; //break; ... case 常量n: 语句n; //break; default: 语句: //break; } 注: 1. 根据swi ...

  6. c语言scanf在%后加.意义,C语言scanf函数详细解释

    while(scanf("%d,%d",&a,&b)!=2)fflush(stdin); c=a+b; printf("%d+%d=%d",a, ...

  7. python调用函数加不加括号

    一.不带括号时,调用的是这个函数本身 ,是整个函数体,是一个函数对象,不须等该函数执行完成 二.带括号(参数或者无参),调用的是函数的执行结果,须等该函数执行完成的结果

  8. ES6箭头函数后面加不加花括号{}问题

    前言 本人在做项目的时候,使用到了every方法并使用箭头函数,我在箭头函数中加了花括号但是却无法返回正确的结果,经过查阅才知道,箭头函数后加花括号和不加是有区别的. 一.箭头函数后加花括号 如下所示 ...

  9. JavaScript里的函数加或不加括号的区别

    区别 加括号:代表立即执行,也代表该函数的返回值 不加括号:代表函数体本身(Function类型) 测试 1.分别alert出各自结果 <html><head><titl ...

最新文章

  1. 在线音乐电台Pandora股价暴涨20% CEO肯尼迪辞任
  2. 组合恒等式2 五个基本的组合恒等式 更复杂的技巧与例题
  3. 118. Leetcode 392. 判断子序列 (动态规划-子序列问题)
  4. asp.net控件开发基础(21)
  5. VTK:Filtering之SurfaceFromUnorganizedPoints
  6. C/C++ VS中调用matlab函数的方法
  7. 【BZOJ 1001】[BJOI2006]狼抓兔子(最大流)
  8. stand up meeting 12/8/2015
  9. 阿里王帅回应“马云被印度法院传唤”:马云太难找,要去HHB酒吧试试
  10. 密码猴机器人编程合肥店_CES 2019:边搭积木边学编程 葡萄科技推出编程积木机器人PaiBots...
  11. 开发者中的领导与管理(译文)
  12. 人员能力模型及能力培养设计
  13. 乐山计算机学校学籍管理,乐山计算机学校学生管理系统设计与实现
  14. unity sky Time of Day - Dynamic Sky Dome
  15. 浅析「网络安全政策陆续发布」对企业的影响
  16. opengl 画椭圆_如何用彩铅画一朵牡丹?彩铅牡丹花的画法步骤,彩铅花卉画入门教程...
  17. 从零开始画自己的DAG作业依赖图(三)--节点连线简单版
  18. python去除Excel重复项
  19. 寻找解决样本不均衡方法之Focal Loss与GHM
  20. python成绩查询系统_教你用python爬虫监控教务系统,查成绩快人一步!

热门文章

  1. HTML统一资源定位器——html的url知识
  2. node高版本不支持win7系统
  3. 如何将2000kbps的mp4视频转换成30000kbps的视频?视频比特率如何修改?
  4. vim安装指南(for Ubuntu and Windows)(配置C/C++和Python开发环境)
  5. iOS UIButton放到页面底部延迟响应touchDown事件
  6. ROS中ENU坐标系与无人机中NED坐标系的转换关系理解
  7. 输入一个网址后发生了什么
  8. Vue 3的企业级项目开发开篇词|为何掌握了技术API,依然在项目中处处掣肘?
  9. 实验7-1-13 装箱问题 (20分)
  10. PHY6222国产M0内核低功耗多协议蓝牙SoC芯片智能家居MESH方案替代NRF52810/52832