手机
当前位置:查字典教程网 >编程开发 >C语言 >解析c语言switch中break语句的具体作用
解析c语言switch中break语句的具体作用
摘要:问题:break在for循环、while循环等循环流程控制中起的作用是停止执行break后面的语句,跳出本次循环,并跳出该循环控制体;在sw...

问题:

break在for循环、while循环等循环流程控制中起的作用是停止执行break后面的语句,跳出本次循环,并跳出该循环控制体;

在switch条件选择中,没有了循环控制,break又起什么作用呢?

解决办法:

1. switch语句的执行流程是:

首先计算switch后面圆括号中表达式的值,然后用此值依次与各个case的常量表达式比较,

若圆括号中表达式的值与某个case后面的常量表达式的值相等,就执行此case后面的语句,执行后遇到break语句就退出switch语句,程序流程转向开关语句的下一个语句;

若圆括号中表达式的值与所有case后面的常量表达式都不等,则执行default后面的语句,然后退出switch语句,程序流程转向开关语句的下一个语句。

在switch-case语句中,多个case可以共用一条执行语句,如:

case 常量表达式1:

case 常量表达式2:

case 常量表达式3:

语句;

break;

由此可以看出case语句的作用:

case后面的常量表达式实际上只起语句标号作用,而不起条件判断作用,即“只是开始执行处的入口标号”。

因此,一旦与switch后面圆括号中表达式的值匹配,就从此标号处开始执行;

而且执行完一个case后面的语句后,若没遇到break语句,就自动进入下一个case继续执行,而不再判断是否与之匹配,直到遇到break语句才停止执行,退出switch语句。

因此,若想执行一个case分之后立即跳出switch语句,就必须在此分支的最后添加一个break语句。

2. 从上面的描述可以看出,switch条件选择语句中的break的作用跟循环控制语句中的作用基本相同:

都是不执行break之后的语句,并结束退出switch语句;

3. 与循环控制中存在continue语句不同的是,switch条件选择语句中没有continue语句;

ok问题解决。

【解析c语言switch中break语句的具体作用】相关文章:

浅析C语言中sscanf 的用法

C语言中基础小问题详细介绍

解析shell排序的实现代码

c语言中位字段与结构联合的组合使用详解

c语言printf函数的使用详解

C语言字符串操作总结大全(超详细)

c语言中getch,getche,getchar的区别

新手小心:c语言中强符号与弱符号的使用

DHCP:解析开发板上动态获取ip的2种实现方法详解

浅析C语言中的sizeof

精品推荐
分类导航