如何在更高版本的gcc上启用c11?

Pau*_*scu 36 c gcc c11

我目前正在使用gcc 4.6.3.我的理解是gcc默认使用gnu89标准,我想启用最新的C标准C11.我试过了:

[pauldb@pauldb-laptop test ]$ gcc -std=c11 -o test test.c
cc1: error: unrecognised command line option ‘-std=c11’
Run Code Online (Sandbox Code Playgroud)

我替换c11gnu11,我得到了同样的错误.为gcc启用最新C标准的正确方法是什么?

(注意:我对最新的C标准感兴趣,而不是最新的C++标准.)

oua*_*uah 55

正确的选择是-std=c11.

但是,它不可用gcc 4.6.您至少需要gcc 4.7支持此选项.在某些旧版本中gcc 4.6,该选项-std=c1x可用于C11的实验(即非常有限)支持.

请注意,当前版本gccgcc 8.2.

  • @bluszcz那是在讨论g ++和C++ 11,gcc和C11也一样吗? (3认同)