在Switch语句之前的预期表达式

这个问题在这里已经有了答案:

  • 为什么不能在switch语句中声明变量? 23个答案

  • Switch语句不会引入新的作用域。 而且,根据C语言规范,正则语句必须遵循一个case语句 - 不允许使用变量声明。 你可以把一个; 在你的变量声明和编译器接受它之前,但是你定义的变量应该在switch的父级范围内,这意味着你不能在另一个case语句中重新声明该变量。

    通常,当在case语句内部定义变量时,为case语句引入一个新的作用域,如in

    switch(event) {
        case kCFStreamEventHasBytesAvailable: {
            // do stuff here
            break;
        }
        case ...
    }
    
    链接地址: http://www.djcxy.com/p/14781.html

    上一篇: Expected Expression before ... In Switch Statement

    下一篇: Declaring variables inside a switch statement