编译错误syntax error : missing ';' before 'type'
2013-08-20 21:30
405 查看
在vc中运行以下程序:
////////////////////////////////
//test.c
#include<stdio.h>
void main(void)
{
int i;
printf("Hello World/n");
int j;
}
将这个文件保存成了test.c
然后编译的时候会报一个错误:
syntax error : missing ';' before 'type'
仔细看起来所有的语法都似乎是对的,这个问题有点奇怪,如果把文件改成.cpp或者.cc则能正常编译,把“int j;”放在“printf("Hello
World/n")”上也能正常编译。
google了下得到了答案和总结如下:
在VC中编译c程序,在一个大括号括起的范围内,如果变量声明放在了函数调用的后面,那么编译的时候就会报错:
syntax error : missing ';' before 'type'
然后你可以修改为把变量声明放在函数调用之前,就会顺利通过编译。
总结:
在VC中编译程序,如果是ANSI C或者C++,在可执行代码中随时定义变量是允许的,但是在C是不允许的。
这样的错误也体现在VS中,如果使用for (int i = 0; i++; i<10),且你的文件名是.c,编译时也会报错。
////////////////////////////////
//test.c
#include<stdio.h>
void main(void)
{
int i;
printf("Hello World/n");
int j;
}
将这个文件保存成了test.c
然后编译的时候会报一个错误:
syntax error : missing ';' before 'type'
仔细看起来所有的语法都似乎是对的,这个问题有点奇怪,如果把文件改成.cpp或者.cc则能正常编译,把“int j;”放在“printf("Hello
World/n")”上也能正常编译。
google了下得到了答案和总结如下:
在VC中编译c程序,在一个大括号括起的范围内,如果变量声明放在了函数调用的后面,那么编译的时候就会报错:
syntax error : missing ';' before 'type'
然后你可以修改为把变量声明放在函数调用之前,就会顺利通过编译。
总结:
在VC中编译程序,如果是ANSI C或者C++,在可执行代码中随时定义变量是允许的,但是在C是不允许的。
这样的错误也体现在VS中,如果使用for (int i = 0; i++; i<10),且你的文件名是.c,编译时也会报错。
相关文章推荐
- 编译错误syntax error : missing ';' before 'type'原因探寻
- 编译错误syntax error : missing ';' before 'type'原因探寻
- 编译错误syntax error : missing ';' before 'type'原因探寻(VS 编译C文件)
- VC编译C代码时错误“ syntax error : missing ';' before 'type' ”
- 编译错误syntax error : missing ';' before 'type'原因探寻
- 编译错误syntax error : missing ';' before 'type'原因探寻
- 编译错误syntax error : missing ';' before 'type'
- vs2005 C编译错误syntax error : missing ';' before 'type'
- 编译错误syntax error : missing ';' before 'type'
- VS编译错误:syntax error : missing ';' before 'type'
- 编译错误syntax error : missing ';' before 'type'
- Cocos2dx 3.6源码编译错误:syntax error : missing ')' before '{'
- syntax error : missing ';' before identifier 'PVOID64' (DSHOW开发编译错误 winnt.h)
- VC++ 2005中编译C出错:error C2143: syntax error : missing ';' before 'type'
- VC++ 2005中编译C出错:error C2143: syntax error : missing ';' before 'type'
- syntax error : missing ';' before 'type'错误
- syntax error : missing ';' before 'type'错误
- VC++中编译C出错:error C2143: syntax error : missing ';' before 'type'
- Cocos2dx 3.6源代码编译错误:syntax error : missing ')' before '{'
- syntax error : missing ';' before 'type'原因探寻