C 标准的 Rationale 之一: 优先考虑效率,而可移植性尚在其次。
这就要求程序员非常清楚这些规则,如果你要写可移植的代码,就必须清楚哪些写法是不可移植的,应该避免使用。
另一方面,写不可移植的代码有时候也是必要的,比如 Linux 内核代码使用了很多只有 gcc 支持的语法特性以得到最佳的执行效率,在写这些代码的时候就没打算用别的编译器
编译,也就没考虑可移植性的问题。
C 语言与平台和编译器是密不可分的,离开了具体的平台和编译器讨论 C 语言就是只停留在具体的基本语法上了。
探讨了C语言中效率与可移植性的权衡问题,分析了在不同场景下如何选择编写可移植或不可移植的代码,并举例说明了Linux内核代码为何偏向于使用特定编译器以获取更高效率。
1294

被折叠的 条评论
为什么被折叠?



