例如,哪个gcc版本支持c99?
是否有表格或图表显示gcc和g ++的标准支持状态?
gcc和g ++是如何演变的?
谢谢〜
答案 0 :(得分:16)
非常严格地说,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库,这不容易替换。
答案 1 :(得分:9)
目前,您可以获得最新版本的最广泛标准支持。可以使用-std
开关设置所选标准。 Here is an article that describes the available values。使用-fpermissive
也可以启用一些其他功能/不同的行为。
答案 2 :(得分:4)
答案 3 :(得分:2)
我想这个表也很有用: cppreference compiler support page
答案 4 :(得分:0)
支持详情可在gnu网站上找到。我记得gcc有几十个标准不适用于c99。 无论如何,要在gcc中支持c99只需要简单的--std = c99参数