Linux Gcc编译错误(转载)

转自:http://www.linuxidc.com/Linux/2012-01/52153.htm

 

Linux系统下的c编程与Windows有所不同,如果你在用gcc编译代码的时候提示‘for’ loop initial declarations are only allowed in C99 mode,可能就是因为你在loop循环比如for中使用未预先定义的变量,比如:

for(int i=0;i<10;i++)

{

}

这种写法在vc里是没有错的,而子gcc就会提示错误,要求遵守c89标准,c89标准是不支持上述写法的。如果你非要这么写可以这样编译,使用c99标准:

gcc helo.c -std=c99 -o hello 

当然,你也可以先定义i变量。

int i;

for(i=0;i<10;i++)

{

}

这样再编译就不会再提示‘for’ loop initial declarations are only allowed in C99 mode这样的错误了

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。