转自:http://blog.csdn.net/thefutureisour/article/details/7598775

来说说C语言方面的图书。什么,C语言?有读者奇怪了。没错,这一次的主角就是诞生于1973年如今已经儿孙满堂的C语言。我们之所以要谈及C,不仅仅是因为它的影响深远,这完全可以从C系列语言家族的兴旺发达得到证明:C++、Java和C#以及Objective C等C的子孙先后成为软件业或者各种操作系统上的主流语言,雄霸多年,至今不衰。我们的理由主要来自C语言自身的魅力。30多年之后,它并没有因为岁月的流逝而失色。无论是TIOBE这个编程语言风向标,还是图书市场的销售情况都表明,在儿女辈的C++甚至都略显疲态的今天,C竟然是仅次于Java的第二大语言。

C语言相关的图书虽然数量一直不少,但往往取材于相似的资料来源,总体质量不高。而从市场销售数据的来看,许多读者在选择C方面的图书时仍然比较盲目,存在一定劣币逐良币的情况,这在很大程度上已经成了许多软件开发人员基础不牢、坏毛病较多的病根之一。

经典

与其他主流语言中往往有几部著作堪称不可替代的经典不同,C语言的世界里只有一本书拥有这样无上的地位,它当然就是C语言之父Dennis Ritchie和另一位技术专家Kernighan合著的这部不朽之作:

C程序设计语言(第2版·新版)Brian W.Kernighan, Dennis M.Ritchie徐宝文 李志 译 机械工业出版社30元

本书经常被人简称为“K&R C”(K和R分别是两位作者姓氏的头字母),它在程序设计语言图书中的地位几乎与C在程序设计语言中的地位相当。许多书开始用输出“Hello World!”作为第一个例子,就是从这里来的。有意思的是,最近又有人批评这一惯例容易使学生产生编程很容易的错觉,产生了许多后续问题。虽然也言之成理,但是总有些苛刻了。

本书具有许多贝尔实验室大师们作品的一致优点,篇幅很小,但是内容却非常丰富,而且叙述也非常清晰。与大部分father写的作品一样,它主要还是针对有一定编程经验的读者而写的,不是完全的入门读物。当然,这也为他人编写形形色色的入门教程留下了空间。对了,本书还有配套习题集《C程序设计语言(第2版·新版)习题解答》(机械工业出版社,2004),也有影印版。

C标准库P. J. Plauger徐明亮等译 人民邮电出版社(即将出版)

函数库是编程语言的重要组成部分。但是此前出版的所有C语言著作中,对函数库都缺乏非常全面深入的阐述。本书的出版,将很好地填补这一空白。作者是著名的C/C++专家,曾经担任标准化委员会主席和C/C++ User's Journal的主编。更重要的是,他本人是一位著名的函数库开发者,为许多主流的编译器厂家提供函数库实现。本书几乎做到了极致——完整给出了C标准库的实现源代码,并一一进行解说。这使它有了与K&R C并列的资格。

入门

我经常感到纳闷的是,其实C语言方面近年来已经出了不少优秀的入门书,但是为什么还是有很多读者和老师放着好书不用,仍然在选择那些已经不能适应现在要求的、问题很多的传统主流教材甚至翻抄滥造的书呢?

总的来看,目前比较好的入门图书有翻译自国外的,也有国内原创的。相对而言,这些优秀教材有一个共同的优点,就是能够紧密结合开发实战,是为用而教、而学,而不像有些国内教材,因为作者本身往往缺乏实际软件开发经验,只能为教学而教学。由此带来的特点包括:注重软件工程,注重读者正确编程习惯和风格的培养,从实战需要出发选择侧重点,而不是平面化地去讲述各个知识点。

C语言程序设计:现代方法K.N.KING吕秀锋 译 人民邮电出版社55元

有人称赞本书为“近10年来最好的一部C语言著作。”已被全球200多所学校采用为教材,包括哈佛大学、麻省理工学院、斯坦福大学等诸多名校。书中对C语言主要知识点包括函数库的涵盖都很全面深入。有些遗憾的是,此书原版出版时间较早,无法纳入C99标准的新特性。不过,新版今年已经出版了,中文版相信也会很快更新。

C程序设计经典教程:第4版Harvey M.Deitel,Paul J.Deitel聂雪军 贺军 清华大学出版社43元

另一部大名鼎鼎的C语言著作,教材采用也很普遍。新版涵盖了C99。

C Primer Plus中文版(第五版)Stephen Prata人民邮电出版社60元

一本条理清晰、见解深刻的C语言教程。涵盖C99。内容很全面。

此外,还有Stephen Kochan《C语言编程(第三版)》(电子工业出版社)、Eric Roberts《C语言的科学与艺术》(机械工业出版社)、Hanly和Koffman《C语言详解(第5版)》(人民邮电出版社)等都是比较优秀的入门教材。国内近年出版的之中,哈工大苏小红等的《C语言大学实用教程(第2版)》(电子工业出版社)、四川大学陈良银等的《C语言程序设计(C99版)》(清华大学出版社)是其中的佼佼者。

进阶

C专家编程

PETER VAN DER LINDEN徐波 译 人民邮电出版社45元

C陷阱与缺陷ANDREW KOENIG高巍 人民邮电出版社30元

C语言没有Effective C这样的著作,其空白大概只有这两本书可以稍微填补,都属于不朽经典之列。最近中文版再次出版,反响热烈。

此外David Hanson的《C语言接口与实现:创建可重用软件的技术》是lcc作者之一的呕心之作,本来价值极高,但是毁在了翻译上,无法推荐了。

实战

C语言解惑

ALAN R. FEUER

杨涛 译

人民邮电出版社

29元

本书内容最初是贝尔实验室的内部培训资料。作为C语言学习的辅导书,非常有用。

C语言名题精选百则技巧篇

冼镜光

机械工业出版社

44元

本书作者是密歇根技术大学的教授,选材较精,而且代码质量也比较高。

<!--[if !supportEmptyParas]--> <!--[endif]-->

参考

C语言核心技术

Peter Prinz;Tony Crawford

O'Reilly Taiwan公司 译

机械工业出版社

C语言参考手册(英文影印版)(第5版)

Samuel P. Harbison, Guy L. Steele

人民邮电出版社

55元

两本书都是优秀的查询手册,而且都涵盖了C99。可惜的是,前者中文版没有索引,废去一半武功;后者中文版翻译较差,只能推荐影印了。

C语言目前应用仍然非常广泛,按道理还应该包括嵌入式系统编程和单片机编程方面的图书,但是一时竟找不到合适推荐的,只能空缺。读者如果有所发现,请告我为盼。

C语言之四书五经—C语言书籍推荐相关推荐

  1. python学习书籍推荐-Python语言之6本机器学习书籍推荐

    本篇文章主要讲述Python语言之6本机器学习书籍推荐,希望阅读本篇文章以后大家有所收获,帮助大家对相关内容的理解更加深入. 机器学习是实现人工智能的一种途径,它和数据开掘有一定的相似性,也是一门多领 ...

  2. 编程入门python语言是多大孩子学的-我的孩子需要学习Python吗?几岁开始学?有什么书籍推荐?...

    原标题:我的孩子需要学习Python吗?几岁开始学?有什么书籍推荐? 最近有一些家长问我,需不需要让孩子学习Python,孩子学习Python有什么作用? 最近确实有看到不少的机构在宣传Python, ...

  3. Go语言相关书籍推荐(从入门到放弃)

    前言 最近总有读者问我可不可以推荐一下go语言入门必读书籍.所以今天就推荐几本.因为笔者也没读过几本,所以就咨询了几位前辈,现在我就把这一份书单介绍给你们,从入门到进阶. Go语言简介 Go语言是最近 ...

  4. C 语言新手入门教程,0 基础的小伙伴请进~(书籍推荐+项目推荐)

    所有学过 C 语言的人,还记得被指针支配的恐惧吗?还记得一个叫谭浩强的男人吗? 如果你是一名高校大学生,或者在准备计算机等级考试,小编为你准备了一篇非常好的 C 语言入门文章! 从零基础入门讲起,循序 ...

  5. 2021_01_22_R语言在空间可视化方面的英文书籍推荐

    R语言在空间可视化方面的英文书籍推荐 #这是我的第一篇blog! #接触R语言在地理空间可视化的应用方向已有接近2个月! #我整理了几本很好的英文书籍,特别有针对性,针对一些想用R在城市规划设计专业中 ...

  6. C语言入门学习和书籍推荐

    转载自<C語言入門學習和書籍推薦> 1.C语言适合当第一门编程语言学习 ①.C语言语法相对简单,但又比较完整和严谨,包含该有的各种元素.学完C语言语法,要学习其它编程语言就很容易了. ②. ...

  7. 【转】C语言之四书五经

    C语言教学早就进入了我国各大高校的教程,但是大家对它的认识以及重视程度还很是不够.很多人认为C语言无非是一种教学语言,是一种工业语言,它很老了,该淘汰了,比不上VC++.Java.C#等新兴语言牛B, ...

  8. C++程序设计之四书五经—C++书籍推荐

    C++是一门广泛用于工业软件研发的大型语言.它自身的复杂性和解决现实问题的能力,使其极具学术研究价值和工业价值.和C语言一样,C++已经在许多重要的领域大获成功. 然而,一个不可否认的现实是,在低阶程 ...

  9. 学习C语言基本思路与参考书籍

    征得林健入本人的同意,把这篇文章搬到CSDN来,同时也希望和我一样的新人能够少走弯路,在计算机这条道路上能够越走越远. 原文地址:http://zhuanlan.zhihu.com/linjr/196 ...

最新文章

  1. 英伟达发布“空气CPU”,Arm架构专为AI而生,性能超x86十倍,与自家GPU更搭
  2. iOS enum 定义与使用
  3. 2015#183;Fool#39;s Day#183;NND
  4. linux查询关键词上下行_【已解决】Linux下通过关键字模糊查找搜索文件
  5. nginx编译安装,nginx静态资源访问和负载均衡的使用!
  6. python与数学的故事_我与数学的故事作文800字
  7. [HTML5游戏开发]简单的《找没有同汉字版〗爆去考考您狄综力吧
  8. Android java.lang.IllegalArgumentException: You cannot start a load for a destroyed activity
  9. Python 学习拾遗
  10. oracle ora 16014,ORACLE ORA-16014+ORA-00312 数据库在线重做日志没有归档
  11. 求三个数的最大最小值
  12. 玩转SpringCloud Security OAuth2资源授权动态权限扩展
  13. 浅议“全局变量”、“多线程”和“编译器陷阱”
  14. 【廖雪峰官方网站/Java教程】Maven基础
  15. Kotlin 区间的一些小注意
  16. 模拟电子技术基础》期中考试试题,仅供参考
  17. jact变频器故障代码_高淳JACT变频器,艾克特变频器ERR20编码器故障维修烟台市...
  18. 利用com.googlecode.libphonenumber解析手机号归属地
  19. STM32F103_study48_The punctual atoms(STM32 Serial communication experiment )
  20. 阿里云数据盘挂载完整过程

热门文章

  1. Python新手经典案例之奥特曼打怪兽-lol版
  2. 基于调用百度翻译API的简易翻译器(python)
  3. 支付宝支付流程与RSA算法原理
  4. Python之定时器的使用
  5. 双城记:京城走进海关、电力讲解决方案,泉城展开“X+Y”渠道招募
  6. 【LeetCode】妙用位运算解题
  7. 单价多少元一千克在c语言中怎么表示_教育机器人锂电池一般多少钱
  8. 怎么把一张暗的照片调亮_太暗的照片怎么调整?
  9. Unity3D入门:3D场景
  10. 安卓手机能升级鸿蒙系统,华为官宣好消息,20款手机适配新系统,未来还能升级鸿蒙OS...