哪个更好c89或c99

时间:2010-01-15 11:17:06

标签: c

gcc 4.4.1

我只是想知道哪种标准更好,更便携?

我正在研究这个问题。并且发现c89仍然比c99广泛使用。没有多少C开发人员转向更新的c99标准。

而且,c89比c99更便携吗?

因为c99已经存在了10年多。我原以为它会比c89标准使用得更多并且同样便携?

非常感谢任何建议,

5 个答案:

答案 0 :(得分:7)

不幸的是C89更便携。微软不打算add c99 support to VS2010(尽管他们确实支持某些功能)。海湾合作委员会要好得多,但still not 100% compliant with the standard

Wikipedia has more information关于其他实现。

答案 1 :(得分:3)

YES。 C89比C99便携。

以下是对C99 support on different platforms and compilers的讨论。

答案 2 :(得分:3)

C99标准“更好”,因为它更新,并提供C89中没有的有用功能(VLA,复合文字,限制关键字,改进的数学库等)。它没有像C89那样受到广泛支持,因为C89对于大多数工作来说都“足够好”,并且没有像C89出现时那样转向新标准的压倒性需求(C99提供的改进相当于C89)增量,而C89相对于K& RC的改进是显着的)。

答案 3 :(得分:1)

不确定哪种更好,但通常您希望遵循更新的标准,这可能有助于生成更好,更可靠的代码。

答案 4 :(得分:1)

c89 + #ifdefs是要走的路。

我正在使用Sun Studio 11并喜欢它。它完全符合c99,但仅针对Linux和Solaris。我不知道任何其他流行的完整的c99兼容编译器,我只是查找维基百科,它告诉我相同。

如果您需要嵌入式系统,即使部分支持也几乎没有希望获得广泛的支持。