嵌套case,for和if循环的优先级是什么?

sur*_*raj 4 c break switch-statement subroutine

我有一个与此类似的程序:

switch(x)
{ case 1:

for(i=0; i<10; i++)
{
   if ((i==3) || (i==4) || (i==5) || (i==6) || (i==7))
   {
      if (foobar[i])
         break;    // i am talking about this break
   }
}
...further program
break;   /not this break
Run Code Online (Sandbox Code Playgroud)

如果foobar[i]是真的,程序是否会突破case标签或for循环?

Bin*_*rty 12

break遵循后进先出型的性质,那就是,最后break会出来第一控制结构.所以,break你选择的那个会打破for-loop,而不是case.


Pro*_*FOX 5

for循环.

请参阅:break声明(C++):

break语句结束最近的封闭循环或条件语句的执行.控制传递给结束语句后面的语句(如果有).