GCC的GNU C标准和ANSI C的区别是什么?

3

有人能描述一下GCC的GNU C标准和ANSI C之间的区别吗?哪个更好,为什么?

3个回答

3

同意,“关于哪个更好的问题,你需要指明目的...”一句话需要加上一个“为了...”的从句。 - Jeremy J Starcher
+1 是针对 RT?M 隐晦的赞成吗?GCC 实际上做得相当不错(虽然不是我见过的最好的,但远非最差),记录了其与标准不同之处。 - twalberg
@JeremyJStarcher 实际上,如果你不知道它们之间的区别,寻求专业人士的优缺点仍然是有用的。你可能有许多不同的目的。 - Puddle

3

GNU C是一种C编译器.... ANSI C是一种标准。

许多编译器可以编译ANSI C,但通常也有自己的扩展。


2
此外,ANSI C标准有很多“实现定义”的项目,这意味着两个编译器都可以满足规范,但在实现某些项目时可能存在差异。Gnu C以一种与其他编译器不同的方式实现了这些项目。 - old_timer

1

一般来说,GNU C 是 ANSI GNU 完全支持的扩展。它有时会包括未来/测试/建议标准。几乎总是,GNU C 将支持他们支持的最高 ANSI C 版本。使用 GNU C 的唯一缺点是,如果您为 GNU C 编写代码,那么您的代码将不太可移植。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接