c++while加嵌套if里面如果有break,跳出的是if还是while

while(1)
{
if(XXXX==XXXX)
{
if(NNN==NNN)
{
if(aaa==aaa)break;
}
}
}
这个break跳出的是while还是当前的if(NNN==NNN)
我的意思是
如果是while循环内有多层if嵌套.
用break,是跳出当前的if语句,还是直接跳出while循环.....

跳出的是while。
break语句的调用,起到跳出循环或者分支语句作用。
也就是说,break只有两种使用环境:
1 用于循环体内,包括for, while和do-while循环,作用为跳出break所在循环体。注意,如果是循环嵌套,而break出现在内层,那么只能跳出内层循环,无法跳出外层循环。
2 用于开关语句,即switch - case语句,起到跳出开关语句作用。用于switch嵌套时,与上述循环嵌套效果相同,只可以跳出所在开关语句。

从以上可以看出,break语句对if(判断语句)是没有效果的,所以不可能起到跳出if的作用,只会是跳出whille。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-01-10
break中断语句是跳出当前循环体,也就是说break语句只能当前循环体有效。
这里已经说得很清楚的了,假设你只有一个循环,不管该循环体内有多少个if语句,只要有一个break,那么就会直接跳出该循环。本回答被提问者采纳
第2个回答  2014-01-10
break跳出的是循环,不过只是跳出一个循环。例如
while(1)
{
while(1)
{
break; //这个break跳出内循环,将进入外循环继续执行
}
}
第3个回答  2014-01-10
应该是给跳出循环 ,不知道你有没有试过,多长 if else 嵌套是不能用break的.循环可以用,推理的是跳出循环用的。
第4个回答  2014-01-10
break用来跳出最里层while或for或switch循环
相似回答