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

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

#问题现象

xxxxxxxxx.c:2697:5: error: a label can only be part of a statement and a declaration is not a statement

    struct v4l2_input input1;

    ^~~~~~

xxxxxxxxx.c:2698:5: error: expected expression before ‘int’

    int index;

    ^~~

#问题分析

case 之后的’A’为一个label,随后定义的变量由于没有明确的作用域而会报错。

#处理方法

将此case的处理内容用{}包括起来;

将变量定义到switch之外。

#问题衍生

在switch里面,case之外,不要定义变量,因为这些语句都会被忽略,进入switch后会直接寻找case,而忽略其它语句。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容