ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# C语言编程 ### 初阶读物 ### Linux C/C++编程一站式学习 作者:宋劲杉 个人很喜欢这本书,同时又是「一站式」学习,在Linux下结合此书学习C/C++高效,所以就放在第一本了。 此书内容涵盖极广:C的基本语法、简单的数据结构与算法、C与汇编的联系、计算机系统结构、操作系统、正则表达式、TCP/IP 以及 Linux 系统编程,无所不包。从该书网站最新的内容来看,作者正在添加C++及动态语的部分,赞! 如此一来似乎样样通而样样不精,其实不是这么回事。作者将内容穿插得非常好,用十分简明的方式把每个方面最重要的东西都阐明清楚了。所以,其实这是本入门书,当然也适合各个方面都有所了解之后用。 11年3月该作者又出版了《一站式学习C编程》(升级版),弱化了Linux和嵌入式的方向性,而且也变的更适合零基础读者阅读,在「它和前一版有什么不同」中作者有这么一段话:「虽然我在上一版中信誓旦旦地说这是一本面向完全零基础读者的书,但现实教育了我,要写出一本让任何零基础读者都看得懂的书是一门复杂的系统工程,我只能努力接近这个目标,而永远达不到这个目标。」很幸运的是这本编程导论小册子弥补了这一点O(∩_∩)O哈哈~ 作者在出国后在原来的《Linux C编程一站式学习》基础上更新,并以中英双语写作——[Learning Linux C/C++ Programming from Scratch](http://songjinshan.com/akabook/),英文版目前在写第四部分——[from C to C++](http://songjinshan.com/akabook/en/index.html)。完整的旧版本见 [Linux C编程一站式学习](http://akaedu.github.io/book/)。国内能有如此对自己作品负责的技术作者实在是不多见,力荐! ### C Programming: A Modern Approach Author: K. N. King 中文书名:[C语言程序设计:现代方法 (豆瓣)](http://book.douban.com/subject/4279678/) 书如其名——现代方法,讲解了一些适应现代大规模编程的方法。这本书的第一版有超过225所学校用过,比如MIT, Stanford, UC Berkeley, Caltech等等牛校。第二版新增了很多内容,当然,书也厚了很多,很多... 书中内容讲解清晰,译作质量也很好,适合自学用的教材。 ### C Primer Plus Author: Stephen Prata 中文书名:无 C语言的百科全书,既有深度又有广度,可以作为工具书使用。典型的国外教材,非常非常厚,厚到有点让你觉得罗嗦。 第6版已经在国外出版,包含了最新的C11标准的介绍。不过目前来看C99才是最普遍的呐。 本书第五版的中文翻译版**翻译质量超级烂**,如果你不慎买了这本书,送人会误人子弟,烧了会污染环境,就当废纸用好了。想办法去弄一本英文原版的吧,具体方法我才不会告诉你哩。 ### 进阶读物 在没有读完初阶读物前最好不要来读此类书籍,否则身心将受到巨大的摧残。 ### The C Programming Language 2nd edition Author: Brian W. Kernighan, Dennis M. Ritchie 中文书名:[C程序设计语言:第2版•新版 (豆瓣)](http://book.douban.com/subject/1139336/) 此书简称K&R,由C语言的创建者撰写,其品质毋庸置疑。写的十分精简,不过并不适合入门,对于那些已经对C有一定了解之后的人来说是一种享受。 ### C Programming FAQs: Frequently Asked Questions 2nd edition Author: Steve Summit 中文书名:[你必须知道的495个C语言问题 (豆瓣)](http://book.douban.com/subject/3422332/) 本书是Summit以及C FAQ在线列表的许多参与者多年心血的结晶,是C语言界最为珍贵的财富之一。适合对C有一定了解和一定编程实践后再来看, 1995年出版了该书的英文第二版,中文版算是第一版吧,2009年出的,所以说与英文原版有较大改进。 ### Expert C Programming Author: Peter van der Linden 中文书名:[C专家编程 (豆瓣)](http://book.douban.com/subject/2377310/),中文译者:徐波 书的内容虽然很有深度,涵盖范围也很广,但是作者语言幽默,读起来还是不那么枯燥的。 ### Pointers on C Author: Kenneth Reek 中文书名:[C和指针 (豆瓣)](http://book.douban.com/subject/3012360/),中文译者:徐波 同上,中文译者仍为徐波,翻译过来的读起来偶尔会有点拗口,全书通过指针这根主线来组织,但内容其实大大超过了指针的范畴,涵盖了很多C语言的高级话题。 ### C Traps and Pitfalls Author: Andrew Koenig 中文书名:[C陷阱与缺陷 (豆瓣)](http://book.douban.com/subject/2778632/) 书很薄,英文原版是1989年1月11日出版的,那时候ANSI标准都还没出来。可想而知,书中所提到的缺陷已经在C89 & C99中得到了相当的改善,所以看之前得对C89 & C99有所了解才能吸收最大的价值。书虽然很老了,但是其中的思想大家还是可以借鉴的。 ### C: A Reference Manual Author: Samuel P. Harbison & Guy L. Steele 中文书名:[C语言参考手册 (豆瓣)](http://book.douban.com/subject/2132084/) 适合在写程序的时候作为参考,对每一条函数都有C89 & C99等详细使用区别。 ### The Standard C Library Author: P.J. Plauger 中文书名:[C标准库 (豆瓣)](http://book.douban.com/subject/3775842/) 英文原版是1991年1月11日出版的,中文翻译版是2009年7月出版的。本书精辟地讲述了每一个库函数的使用方法和实现细节,同时还给出了实现和测试这些函数的完整源代码。 ### Writing Solid Code Author: Steve Maguire 中文书名:[编程精粹 (豆瓣)](http://book.douban.com/subject/3406939/) 英文原版是1993年1月1日出版的,2009年人民邮电出了中文翻译版,1993年电子工业出版社出的基本没有了。 本书篇幅不长,主要讲的是微软团队在开发大型软件过程中所总结的经验。 ### ISO/IEC 9899:1999, Programming languages — C 2nd edition 中文书名:ISO C99规范 一切关于C语言的疑问,只有一件东西最权威,那就是ISO的规范。但这不是正式出版物,是类似法律文本的技术说明,而且只有英文版。新手阅读,提防吐血而亡。而且即使有ISO 规范,也不见得各编译器都去实现。 P.S. 前几年发布了C11标准,估计还得过很多年才能普及开来吧。