读书人

C语言不支持 quot;break + 数目字quot;的表达式

发布时间: 2013-09-06 10:17:17 作者: rapoo

C语言不支持 "break + 数字"的表达式

void breaktest()
{
int i=0;
for(;i<10;i++)
{
switch(i)
{
case 5:
break 2;
}
}

printf("%d", i);
}


当switch到某一条件的时候想break跳出循环,而不是只中断switch的case判断.
某种语言可以用break 2这样,连着跳出两个,C语言却没有……
[解决办法]
这时候你需要goto
[解决办法]
goto,或者使用一个标记:

void breaktest()
{
int i=0;
int isbreak;
for(;i<10;i++)
{
isbreak = 0;
switch(i)
{
case 5:
isbreak = 1;
break;
}
if (isbreak) break;
}

printf("%d", i);
}

读书人网 >C++

热点推荐