如何在 gcc 上启用 c99 和 c11?

1 compiling gcc c

当我编译以下代码时,它给出了编译错误

 error: ‘for’ loop initial declarations are only allowed in C99 mode
 for(int i = 0; i < 5; i++)
Run Code Online (Sandbox Code Playgroud)

并编译您的代码使用此选项:

 note: use option -std=c99 or -std=gnu99 to compile your code
Run Code Online (Sandbox Code Playgroud)

现在我的问题是如何使用上述选项并启用 c99 和 c11?

job*_*bin 6

如错误消息中所述,您应该使用-std=c99或编译代码-std=gnu99。因此,例如,您的文件是filename.c,然后使用以下命令进行编译:

gcc -std=c99 filename.c
Run Code Online (Sandbox Code Playgroud)

a.out如果没有更多错误,它将产生一个二进制文件。如果不想使用这个选项,可以ifor循环前声明如下:

int i;
for(i = 0; i < 5; i++)
Run Code Online (Sandbox Code Playgroud)

并使用以下方法编译它:

gcc filename.c
Run Code Online (Sandbox Code Playgroud)