在Switch语句之前的预期表达式
这个问题在这里已经有了答案:
Switch语句不会引入新的作用域。 而且,根据C语言规范,正则语句必须遵循一个case语句 - 不允许使用变量声明。 你可以把一个;
在你的变量声明和编译器接受它之前,但是你定义的变量应该在switch的父级范围内,这意味着你不能在另一个case语句中重新声明该变量。
通常,当在case语句内部定义变量时,为case语句引入一个新的作用域,如in
switch(event) {
case kCFStreamEventHasBytesAvailable: {
// do stuff here
break;
}
case ...
}
链接地址: http://www.djcxy.com/p/14781.html