美文网首页
写项目遇到的一些问题

写项目遇到的一些问题

作者: 既然楼层 | 来源:发表于2025-09-13 09:04 被阅读0次

switch(input)

{case 1:

char  arr[20];

break;

}          //报错:声明不能包含标签

C 语言的语法设计要求:

标签后必须是语句(如 break;、{...})。

声明不是语句,因此不能直接跟在标签后。

int  x=10;  如果x是全局变量,认为是声明

如果是局部变量,可以认为是声明,也可以认为是语句(MSVC 编译器认为只能是声明)

这导致

switch(input)

{case 1:

char  arr[20]="hello world";

break;

}在MSVC 编译器中报错 ,GCC/Clang不报错

解决办法:使用{}包含case:间的代码(包括break;)

这样创建的变量只能在它所在的case:内使用

相关文章

网友评论

      本文标题:写项目遇到的一些问题

      本文链接:https://www.haomeiwen.com/subject/mtktajtx.html