码迷,mamicode.com
首页 > 其他好文 > 详细

for循环中i变量初始化时报错

时间:2014-10-12 13:28:38      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:gcc   c   

用的gcc版本号为:gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1) 

写的程序源文件名为:643b.c,

该文件中,有一个语句:for(int i=0;i<11;i++)

运行编译命令:gcc -o 643b 643b.c

会报错:

643b.c: In function ‘main’:
643b.c:5:2: error: ‘for’ loop initial declarations are only allowed in C99 mode
  for(int i=0;i<11;i++)
  ^
643b.c:5:2: note: use option -std=c99 or -std=gnu99 to compile your code

需要在命令行中添加参数  -std=c99 或者 -std=gnu99

gcc -o 643b 643b.c -std=c99

运行程序:./643b

得到结果:

I am happy

或者:

gcc -o 643b 643b.c -std=gnu99

运行程序:./643b

得到结果:

I am happy

出错的原因可能是因为只有在标准的c99或者gnu99中,才能在for循环中初始化

定义i的类型,所以需要加上参数:-std=c99 或者 -std=gnu99


for循环中i变量初始化时报错

标签:gcc   c   

原文地址:http://blog.csdn.net/wangjiaweiwei/article/details/40016245

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!