C程序设计语言 (书)

维基百科,自由的百科全书
跳转至: 导航搜索
C語言程式設計第一版封面

C程序设计语言》(英语The C Programming Language),又譯為C語言程式設計,介紹C語言的计算机科学著作,由计算机科学家布萊恩·柯林漢(Brian Kernighan)和C语言之父丹尼斯·里奇(Dennis Ritchie)合著,是第一部介紹C語言編程方法的書籍。它有時以作者名字的縮寫,被簡稱為K&R;或是因封面,被稱為白皮书

它在C语言的发展和普及过程中起到了非常重要的作用,被視為是C語言的業界標準規範,而且至今仍然广泛使用。它也被公认为计算机技术著作的典范,以清晰简洁的文字讲述而著称。书中用"hello world"为实例开始讲解程序设计,也已经成为程序设计语言图书的传统。

该书第1版出版于1978年,第2版(也是最新版本)出版于1988年,已被译为世界上20多种文字包括中文。

影响力[编辑]

C程序设计语言经常被看成是技术写作的范例,因为这本书描述清晰简明。仅仅用200多页(包括第一版和第二版)就覆盖了C语言的内容。书中的例子是C语言常用的完整程序,倾向于系统编程。作者通过自己良好的编程实践来说明C语言的技术特征。正如作者在书的前言中写道:

We have tried to retain the brevity of the first edition. C is not a big language, and it is not well served by a big book. We have improved the exposition of critical features, such as pointers, that are central to C programming. We have refined the original examples, and have added new examples in several chapters. For instance, the treatment of complicated declarations is augmented by programs that convert declarations into words and vice versa. As before, all examples have been tested directly from the text, which is in machine-readable form.

中文翻译如下:

我们尽力保持第一版的简洁性。C语言不是一种大型语言,也不需要用一本很厚的书来描述。我们在讲解一些关键特性(比如指针)时做了改进,它是C语言的核心。我们重新对以前的例子进行了精炼,并在某些章节中增加了一些新例子。例如,我们通过实例程序对复杂的声明进行处理,以将复杂的声明转化成描述性的说明或反之。像前一版中的例子一样,本版中所有例子都是以机器可读的文本形式直接通过了测试。

在ANSI C出现之前,这本书的第一版一般是C编译器作者的参考标准。随着ANSI C的标准化,第二版的更加自觉地面向程序员而不是面对编译器的作者,在作者在第二版序言中写道:

附录A是一个参考手册,并不是标准,我们希望通过较少的篇幅概述标准中的要点。附录的目的是为了帮助程序员更好地理解语言本身,而不是为一个编译器的实现者提供一个精确的定义,这个任务属于标准本身。附录B对标准库提供的功能进行了总结。它同样是面向程序员而非编译器实现者。附录C是对ANSI标准相对于以前版本所做的变更进行了小结。

中譯本[编辑]

参考资料[编辑]

外部链接[编辑]