switch case,若无break
2008-11-20 10:51
302 查看
#include <stdio.h>
int main()
{
char x = 'B';
switch (x){
case 'A':printf("A");
case 'B':printf("B");
case 'C':printf("C");
default: printf("D");
}
}
result: BCD
哎...
case后面的常量表达式实际上只起语句标号作用,而不起条件判断作用,即"只是开始执行处的入口标号".
因此,一旦与switch后面圆括号中表达式的值匹配,就从此标号处开始执行,而且执行完一个case后面的语句后,若没遇到break语句,就自动进入
下一个case继续执行,而不在判断是否与之匹配,直到遇到break语句才停止执行,退出break语句.因此,若想执行一个case分之后立即跳出
switch语句,就必须在此分支的最后添加一个break语句.
int main()
{
char x = 'B';
switch (x){
case 'A':printf("A");
case 'B':printf("B");
case 'C':printf("C");
default: printf("D");
}
}
result: BCD
哎...
case后面的常量表达式实际上只起语句标号作用,而不起条件判断作用,即"只是开始执行处的入口标号".
因此,一旦与switch后面圆括号中表达式的值匹配,就从此标号处开始执行,而且执行完一个case后面的语句后,若没遇到break语句,就自动进入
下一个case继续执行,而不在判断是否与之匹配,直到遇到break语句才停止执行,退出break语句.因此,若想执行一个case分之后立即跳出
switch语句,就必须在此分支的最后添加一个break语句.
相关文章推荐
- 写switch case语句不加break会怎样。
- switch中的case不加break执行情况
- switch-case语句里面有return了 ,break还起作用吗?该如何解决
- switch case语句:从匹配处顺序执行,直到遇到break或结束
- switch语句,在case中没有break时出现穿透
- Thinking in Java 第四版本--第3章练习题答案--for,break,switch,case,default
- eclipse简单设置避免遗忘break(switch case)
- switch case 忘记 break
- switch-case-break;
- switch case without break in C language
- switch-case语句忘记加break的后果
- 语句(switch语句及其内case , break)
- java Switch-Case忘写break条件时会执行后面不符合case的语句
- 关于switch case break建议
- switch case break
- C语言中break在switch-case中的作用
- 小程序之switch...case...break
- C语言之switch case语句 case 中没有break时会继续执行下一个case无论条件是否满足都会执行
- switch-case-break语句
- switch case break