C专家编程 break
《C专家编程》中文版
第二章 33-34页
书上的意思是:
当switch语句中的某个case标签下嵌套if语句时,
if语句中的break会导致跳出整个switch语句,
自己试了一下
似乎不是那样的
break只是退出了if语句
case标签中余下的语句依然会执行
比如这样:
C/C++ code:
void main()
{
int a,b;
a=2;
b=1;
switch(a)
{
case 2:
if(b==1)
{
if(a==1)
break;
}
printf("a=1\n");//这一句依然会执行
default:
printf("Error!");
}
}
用VC6.0测试的
不知道是不是不同的编译器会产生不同的结果
C/C++ code:
void main()
{
int a,b;
a=2;
b=1;
switch(a)
{
case 2:
if(b==1)
{
if(a==1) //因为a等于1,所以这个条件不成立
break;//所以这个break不会被执行
}
printf("a=1\n");//这一句依然会执行
default:
printf("Error!");
}
}
C/C++ code
Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.
相关问答:
在ue中从远程unix用二进制方式下载c文件到本地,修改之后用二进制方式上传到unix中,再用vi打开该文件,每行后面就会有一个^M的换行符,如果采用ascii方式下载,二进制方式上传的话就没有^M,那请问这样会对程序文件 ......
以前在VC里面建一个工程,都只用一个 .c 文件,昨天在一个工程里用了两个 .c文件了,遇到问题了,请大家指点。比如:
File1.c Fil ......
为什么C写的DLL文件C、PB能调用VB不能调用?
VB里为什么有的DLL直接通过引用可以使用?有的需要通过declare申明外部函数?这些DLL有什么差别?
1、为什么PB能通过DECLARE声明而VB不行?
2、如果这个dll中的 ......
大家好!我是一位C爱好者,向大家请教下,C程序员可好找工作?公司用C干些什么?
无所谓好不好找工作,一般通信、系统、嵌入式、硬件方面用的多,而且由于C的底层特性,学会后在学其他的会比较容易
不管用什么语 ......
'\108'作为字符常量对不对?
转义字符'\ddd'表示3位8进制所代表的字符。 但是108不是正确的8进制表示方法,因此应该是错误的。
但是char a='\108'; 为什么编译不出错呢?
\108 没超过 ......