22.2.5 C

在1970年,一件“众所周知”的事情是,重要系统的程序设计——特别是操作系统的实现,必须使用汇编语言,从而不具备可移植性。这与Fortran出现之前科学计算程序设计的处境很相像。一些个人和组织开始着手挑战这个成见,最终,C语言(见第27章)成为这些工作中的最成功者。

Dennis Ritchie在位于新泽西茉莉山丘的贝尔电话实验室计算科学研究中心设计并实现了C语言。C的魅力在于它是一种简单的编程语言,这种简单性是慎重规划后的结果,而且C语言与硬件的基本特性关联非常紧密。目前C语言版本的复杂性(其中大多数出于兼容性考虑也出现在了C++中)大多数是在Dennis Ritchie的最初设计之后添加进来的,并且某些情况并不符合他的原意。C的成功部分是因为很早就被广泛使用,但它真正强大之处在于从语言特性到硬件设施的直接映射(见25.4~25.5节)。Dennis Ritchie曾简单地将C描述为“一种强类型、弱检查的语言”;也就是说,C是一种静态(编译时)类型的系统,在程序中不按对象定义的方式使用它是非法的——但C编译器又不会检查这种问题。但当资源有限时,这样做还是有意义的,例如内存只有48K字节时,这样做可以得到更简短的代码。在C投入应用后不久,人们设计了一种称为lint的程序,它将类型系统验证从编译器中分离出来。

Dennis Ritchie与Ken Thompson一起发明了Unix,它无疑是最有影响力的操作系统。C一直都与Unix操作系统紧密联系在一起,近年来,又与Linux和开源项目的发展紧密相连。 ...

Get C++程序设计:原理与实践(进阶篇)(原书第2版) now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.