懵懂的菜鸟

Stay hungry,Stay foolish.

导航

'for' loop initial declarations are only allo

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这样的错误了

posted on 2017-09-16 23:15  懵懂的菜鸟  阅读(621)  评论(0编辑  收藏  举报