C语言诞生背景
1964 年,贝尔实验室加入了通用电气和麻省理工学院发起的计划 MULTICS(一套安装在大型主机上的分时多任务操作系统)。由于项目进展缓慢,1969 年,贝尔实验室宣布退出。做 MULTICS 项目的时候,贝尔实验室的工程师 Ken Thompson 写了个游戏 Space Travel ,不过在 MULTICS 上跑得很慢。退出后,游戏没地儿跑了, 于是 Ken Thompson 邀请 Dennis Ritchie 一块基于 MULTICS 研发一款简易的操作系统,后来就进化成了 UNIX。
第一版 UNIX 是用 PDP-7 汇编语言写的,一些应用由 B 语言和汇编语言混合编写。在进行系统编程时不够强大,因此 Thompson 和 Ritchie 将 B 语言改良,设计了 C 语言。1973 年,两人用 C 重写了 UNIX,这时候的 UNIX 做到了代码简洁、易读、易移植、易修改。
C语言图书推荐
C 是跟底层世界最接近的编程语言。说 C 跟 UNIX 一起引领了计算机革命也不为过。C 生得早,C 语言相关的图书非常多。说来奇怪,那些销量最好的图书都是老经典,有的书甚至 40 岁了。C 在主流编程语言世界的地位可以算得上是大哥大了,说每一位程序员终其职业生涯至少要学习一次 C 应该不夸张。所以,今天这个 C 语言书单具有广泛的群众基础——不止是大家需要它,另一方面,你很可能至少读过其中的一两本。
入门
C语言程序设计:现代方法
C Programming: A Modern Approach, Second Edition
作者:K. N. King
译者:吕秀锋 / 黄倩
出版社:人民邮电出版社(图灵教育)
页数:616
这书最大特色是通过一种“现代方法”来介绍 C 语言,书中强调标准 C,强调软件工程,不再强调“手工优化”。 C99 标准与 C89 标准对照讲解。全书分 C语言的基础特性、 C语言的高级特性、 C语言标准库和参考资料 4个部分讲解。
C Primer Plus(第6版)(中文版)
C Primer Plus (6th Edition)
作者:Stephen Prata
译者:姜佑
出版社:人民邮电出版社(异步社区)
页数:730
大厚本,中文版 730 页,讲解 C 语言的基本概念和编程技巧,内容上覆盖从入门到中级,涵盖 C11 新特性,每章末尾有习题,附录有答案。
全书共 17 章。第1章、第2章介绍了C语言编程的预备知识。第3章~第15章详细讲解了C语言的相关知识,包括数据类型、格式化输入/输出、运算符、表达式、语句、循环、字符输入和输出、函数、数组和指针、字符和字符串函数、内存管理、文件输入输出、结构、位操作等。第16章、第17章介绍C预处理器、C库和高级数据表示。
其他推荐:
嗨翻C语言 (动物出版社 Head First 系列)
明解C语言:入门篇(图灵日系入门书)
C语言程序设计(第4版)
进阶(初级)
C 程序设计语言
The C Programming Language
作者:Brian W. Kernighan,Dennis M. Ritchie
译者:徐宝文 / 李志译 / 尤晋元审校
出版社:机械工业出版社(华章科技)
页数:258
以极为流畅凝练的语言展示 C 语言的编程风格和在实际编程中的应用,并且包含了大量优秀的实例。这本书第一版成书于 1978 年,时间点是 C 语言发布 5 年左右,那时候还不是 ANSI 标准,而是 K & R C(两作者姓氏首字母),今年正好 40 年,一本介绍编程语言的技术书畅销 40 年绝对是个奇迹;而且,在国内外同时广受读者欢迎,常年稳居畅销榜前三。
C和指针
Pointers on C
作者: Kenneth A. Reek
译者: 徐波
出版社: 人民邮电出版社(异步社区)
页数:448
英文版成书于 1997 年,畅销经典。一本旨在让读者全面掌握指针及 C 语言特性,深入理解 C 编程原理的图书。
全书共 18 章,覆盖了数据、语句、操作符和表达式、指针、函数、数组、字符串、结构和联合等几乎所有重要的 C 编程话题。书中给出了很多编程技巧和提示,每章后面有针对性很强的练习。
其他推荐:
明解C语言:中级篇
一站式学习 C 编程
C语言核心技术
进阶
C陷阱与缺陷
C Traps and Pitfalls
作者: Andrew Koenig
译者: 高巍
出版社: 人民邮电出版社(异步社区)
页数:172
C 语言的书基本上都是经典老书,这本同样,英文版成书于 1989 年,帮 C 程序员绕过编程中的陷阱和障碍。
全书分为 8 章,分别从词法分析、语法语义、连接、库函数、预处理器、可移植性缺陷等几个方面分析了 C 编程中可能遇到的问题。最后,作者用一章的篇幅给出了若干具有实用价值的建议。
C专家编程
Expert C Programming: Deep C Secrets
作者: Peter van der Linden
译者: 徐波
出版社: 人民邮电出版社(异步社区)
页数:291
展示优秀 C 程序员所使用的编码技巧。
全书细致讲解和深入分析了 C 的历史、语言特性、声明、数组、指针、链接、运行时、内存以及如何进一步学习 C++ 等问题。
其他推荐:
C语言接口与实现 : 创建可重用软件的技术
数据结构与算法分析:C语言描述
程序设计实践
最后,说一下几个需要注意的问题:
1. 国内外读者在极个别图书的评价上差别挺大,比如《数据结构与算法分析:C语言描述》,国内豆瓣评分 8.9 ,并且被认为学习 C 算法最好的书之一,实际上这本书在美亚卖得不好,而且评价只有三星半。
2. 书单中的部分图书已经出版很久了,虽是经典,其中难免有些内容过时。
3. 以上书单推荐综合了书本身的热度和读者对书的期待程度。另外,初级进阶与进阶的划分并不严格,大家要根据自己的需求选择。
领取专属 10元无门槛券
私享最新 技术干货