首页 > 代码库 > vs2012编译C代码,总是出现error C2143: syntax error : missing ';' before 'type'

vs2012编译C代码,总是出现error C2143: syntax error : missing ';' before 'type'

今天编译一个动态库,里面有用C编写的源文件,

为了调试自己加了一些简单的信息输出语句,但是总是编译不过,

最后精简到只是定义一个函数的局部变量也会编译失败,

最后Google了才明白,vs在编译C代码的时候会有一些特殊的check,

其中一种就是需要函数定义局部变量要在开头。

举例如下:

错误的代码void func1(){   int x;    //do some work   int y;   //do other work }

这样的代码在编译的时候就会在int y 这里报error C2143: syntax error : missing ‘;‘ before ‘type‘;

你需要修改一下变量声明的位置:

 

真确的代码void func1(){     int x;     int y;     //do some work     //do other work }    

 

vs2012编译C代码,总是出现error C2143: syntax error : missing ';' before 'type'