`
85977328
  • 浏览: 1873824 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Eclipse CDT 解决 "for loop initial declaration used outside C99 mode" 错误

 
阅读更多
在用 Eclipse CDT 编写c程序时出现 `for' loop initial declaration used outside C99 mode 错误是因为加 -std=c99 选项

C99标准支持下面这种for 循环的变量i的定义及初始化方式:
	for (int var = 0; var < 10; ++var) {
	}


C99标准之外的C标准支持下面这种for 循环的变量i的定义及初始化方式:
	int var;
	for (var = 0; var < 10; ++var) {

	}



解决办法:

右键点击项目->Properties->C/C++ Build -> Settings -> Tool Settings -> GCC C Complier -> Miscellaneous

在 "Other flags" 中追加 -std=c99




附加阅读
c89与c99的一个小区别
在eclipse中开发的时候,
char n[] = "abcda";
上面的语句都可以编译通过,但是在c89运行的时候会报错,只能使用4个字符以内的长度
而c99则无限制
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics