http://www.yovae.com/blog/linux-gcc%E7%BC%96%E8%AF%91%E9%94%99%E8%AF%AF.html
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这样的错误了
原文链接: https://www.cnblogs.com/balaamwe/archive/2012/01/06/2315024.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/39814
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!