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

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);
}