哪个gcc和g ++版本支持c和c ++的哪个标准?

例如,哪个gcc版本支持c99?

是否有表格或图表来显示gcc和g ++的标准支持状态?

gcc和g ++是如何演变的?

谢谢〜

非常严格地说,GCC仅支持C89,C ++ 98和C ++ 03,自4.3以来都是如此。

到目前为止,对C99的支持仍然不完整,但GCC长期以来一直支持一个非常大且可用的子集。

Experiemental C ++ 11支持从4.3开始,并且从那时起一直在改进; 它已经在4.6.x中非常有用,并且在4.7中添加了更多(尽管4.7.0有点不稳定)。

还有一些C11支持,但C11的许多变化需要一个适当的新C库,这是不容易替换的。

您可以获得目前最新版本4.7的最广泛标准支持。 可以使用-std开关设置所选标准。 这是一篇描述可用值的文章 。 使用-fpermissive也可以启用一些其他function/不同的行为。

请参阅http://gcc.gnu.org/projects/cxx0x.html

我想这个表也很有用: cppreference编译器支持页面

支持详细信息可以在gnu网站上找到。 我记得gcc不适用于c99的标准很多。 无论如何,要在gcc中支持c99只需要简单的–std = c99参数