switch引发的错误 a label can only be part of a statement and a declaration is not a statement

来源:互联网 发布:snmp监控linux主机 编辑:程序博客网 时间:2024/06/16 09:29

用switch的时候发现一个错误

a label can only be part of a statement and a declaration is not a statement 

仔细观察以后发现是没有正确的加大括号引起的。

switch(a){        swtch(a){

case 1:         case 1:

....................       {

....................        ...............

....................        ...............

break;          ................

case 2:         }

break;          break;

}            case 2:

             break;

            }

Error         OK

  

case1://此块代码不能再声明变量,如果你声明变量就会报错,除非用括号括起来,这是编译器的问题,也可以说是C语言的规定。写代码的时候注意就成了。就像C语言再声明的时候不能赋值一样,记住就好了。break;希望对你有所帮助。

追问

找到了原因,我在case下面定义了变量,并给它赋了初值,当把定义和赋值分开就好了,或者是加上大括号。

阅读全文
0 0
原创粉丝点击