当我尝试使用error: 'for' loop initial declaration used outside C99 mode
进行编译时,我收到了make
。我找到了wiki说
在编译行中添加-std = c99:
gcc -std=c99 foo.c -o foo
问题是我不知道如何在make
中指定它。我打开 Makefile ,找到了CC = gcc
并将其更改为CC = gcc -std=c99
但没有结果。有什么想法吗?
答案 0 :(得分:9)
将CFLAGS = -std = c99放在Makefile的顶部。
要在不使用C99的情况下删除错误,只需要在块的顶部声明你的迭代器变量,for循环就在里面。
而不是:
for (int i = 0; i < count; i++)
{
}
使用:
int i;
//other code
for (i = 0; i < count; i++)
{
}