C程序設計語言 (書)
此條目需要擴充。 (2009年1月8日) |
《C程序設計語言》(英語:The C Programming Language),又譯為C語言程式設計,是介紹C語言的計算機科學著作,由計算機科學家布萊恩·柯林漢(Brian Kernighan)和C語言之父丹尼斯·里奇(Dennis Ritchie)合著,是第一部介紹C語言編程方法的書籍。它因作者名字的縮寫被簡稱為K&R;或是因封面顏色,被稱為白皮書。
C程序設計語言 | |
---|---|
原名 | The C Programming Language |
作者 | 布萊恩·柯林漢 丹尼斯·里奇 |
語言 | 英語 |
主題 | C語言 |
發行資訊 | |
出版機構 | 普林帝斯霍爾 |
出版時間 | 1978(第1版) 1988(第2版) |
出版地點 | 美國 |
頁數 | 343 |
規範控制 | |
ISBN | 9780131101630 |
它在C語言的發展和普及過程中起到了非常重要的作用,被視為是C語言的業界標準規範,而且至今仍然廣泛使用。它被公認為計算機技術著作的典範,以清晰簡潔的文字講述而著稱。書中用「hello world」為實例開始講解程序設計,成為程序設計語言圖書的傳統。
該書第1版出版於1978年,第2版(也是最新版本)出版於1988年,被譯為世界上包括中文在內的20多種文字。
影響力
《C程序設計語言》堪稱學習C語言程序設計的經典。行文簡明,結構清晰,僅用200多頁(包括第一版和第二版)就覆蓋了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.[1]
中文翻譯如下:
我們盡力保持第一版的簡潔性。C語言不是一種大型語言,也不需要用一本很厚的書來描述。我們在講解一些關鍵特性(比如指針或指向)時做了改進,它是C語言的核心。我們重新對以前的例子進行了精煉,並在某些章節中增加了一些新例子。例如,我們通過實例程序對複雜的聲明進行處理,以將複雜的聲明轉化成描述性的說明;反之,亦然。像前一版中的例子一樣,本版中所有例子都是以機器可讀的文本形式直接通過了測試。
在ANSI C出現之前,這本書的第一版一般是C編譯器作者的參考標準。隨着ANSI C的標準化,第二版的更加面向程序員而不是針對編譯器作者,在作者在第二版序言中寫道:
附錄A是一個參考手冊,並不是標準,我們希望通過較少的篇幅概述標準中的要點。附錄的目的是為了幫助程序員更好地理解語言本身,而不是為一個編譯器的實現者提供一個精確的定義,這個任務屬於標準本身。附錄B對標準庫提供的功能進行了總結。它同樣是面向程序員而非編譯器實現者。附錄C是對ANSI標準相對於以前版本所做的變更進行了小結。
中譯本
- (美)克尼漢(Kernighan, B. W.); (美)里奇(Ritchie, D. M.). C程序设计语言(第2版·新版). 由徐寶文; 李志翻譯. 北京: 機械工業出版社. 2004. ISBN 978-7-111-12806-9.
- 《C 語言程式設計》,蔡文能譯,培生出版,2005年,ISBN 9861541713
參考資料
- ^ Kernighan, Brian; Ritchie, Dennis M. The C Programming Language 2nd. Englewood Cliffs, NJ: Prentice Hall. March 1988 [2010-05-21]. ISBN 0-13-110362-8. (原始內容存檔於2008-11-06).
外部連結
- The C Programming Language — 本書在貝爾實驗室的官方網站
- 书中练习答案. [2015-11-14]. (原始內容存檔於2015-11-17) (英語).
- 布萊恩·柯林漢. Programming in C: A Tutorial. [2015-11-14]. (原始內容存檔於2015-11-06) (英語).
- Errata for The C Programming Language, Second Edition