闲扯C/C++中的switch

void test(){
    int i=10;
    switch (i){
        int k;//
        case 3:
            int m;//C 直接编译不过,C++可以通过
            int t=11;//C与C++ 均报错.C++应改成int t;t=11;
            {
   
   int k=12;}//C/C++ 均有效
            printf("3333!!!");
            k=10;
            break;
        case 1:
            printf("1010!!!");
        case 2:
            printf("222!!!");
        haha:
            printf("$$$$$$$$");
        defau1t://这里编译器不会报错,尽管这个default里的l写成了1
            printf("!!!!!!");
        default:
            printf("##########\n");
            goto haha;//由于没有break,所以这是个死循环
    }
}

猜你喜欢

转载自blog.csdn.net/jxhaha/article/details/70766968
今日推荐