【转】C语言四书五经

我们来说说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元

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

参考

C语言核心技术

Peter Prinz;Tony Crawford

O‘Reilly Taiwan公司 译

机械工业出版社

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

Samuel P. Harbison, Guy L. Steele

人民邮电出版社

55元

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

【原文:http://blog.csdn.net/turingbook/article/details/2596856】

时间: 2024-09-30 10:21:33

【转】C语言四书五经的相关文章

C语言书籍推荐

为节省篇幅,把原来slides的内容移至此处 初级读物和工具书 C语言大全(第四版) 可做为工具书 作者: (美)赫伯特·希尔特 译者: 王子恢 戴健鹏 等 书号: 7-5053-6915-6  页码: 542   市场价:¥48.00 出版日期:2004年2月 出版社: 电子工业出版社 C Primer Plus中文版(第五版) 作者(美)Stephen Prata    译者:云巅工作室 出版社: 人民邮电出版社    书号 7-115-13022-1 出版日期: 2005-2-1 市场价:

试评一代语言大师辜鸿铭的外语学习法--背诵法

在图书馆有幸看到一本书<中国人的精神>,英文为:the spirit of chinese people. 书中的人物是叫辜鸿铭.英文名:汤生 他,何许人也,他生在南洋,学在西洋,婚在东洋,仕在北洋.精通英.法.德.拉丁.希腊.马来亚等9种语言,获13个博士学位,倒读英文报纸嘲笑英国人,说美国人没有文化,第一个将中国的<论语>.<中庸>用英文和德文翻译到西方.凭三寸不烂之舌,向日本首相伊藤博文大讲孔学,与文学大师列夫·托尔斯泰书信来往,讨论世界文化和政坛局势,被印度圣雄

J2EE修炼之四书五经[转自2004年程序员]

J2EE修炼之四书五经 作者:彭晨阳 J2EE其实没有四书五经,因为J2EE一直如汹涌澎湃的大江,推陈出新,不断高速发展,这是一种带领我们走向未来的技术.当然,如何在这种气势如虹的潮流之中不至于迷失方向,需要相关指南性书籍的引导.本文将从线程和模式两个方面推荐J2EE书籍,这两个方面正好是两种不同的方向,线程是从微观.底层机制入手:而模式则是从设计高度来看待J2EE. 线程(Thread) 首先,线程是很多J2EE初学者容易忽视的一个基本知识,可以说,无论你是从Java世界的哪一扇门进入J2EE

C++程序设计之四书五经[转自2004程序员杂志]--下篇

C++程序设计之四书五经(下篇) 作者:荣耀 我在上篇中“盘点”了TCPL和D&E以及入门教程.高效和健壮编程.模板和泛型编程等方面共十几本C++好书.冬去春来,让我们继续C++书籍精彩之旅. 标准库 当我还在研究院工作时,与同院另外两家研究所合作开发过一个大型水利枢纽调度集成项目.我们三家软件系统之间都要相互通信.在调试通讯模块时,细心的客户(一名好学的系统管理员)发现对于同一通信规约的解释代码,我的不超过30行,而对方的则超过了150行且很难看懂.这位系统管理员很纳闷,我说大家编程风格和习惯

C++程序设计之四书五经(上篇)

C++程序设计之四书五经(上篇)   [文章信息]   作者: 荣耀 时间: 2004-08-26 出处: royaloo 责任编辑: 方舟   [文章导读]   C++是一门广泛用于工业软件研发的大型语言.它自身的复杂性和解决现实问题的能力,使其极具学术研究价值和工业价值 [正文]         C++是一门广泛用于工业软件研发的大型语言.它自身的复杂性和解决现实问题的能力,使其极具学术研究价值和工业价值.和C语言一样,C++已经在许多重要的领域大获成功. 然而,一个不可否认的现实是,在低阶

C++程序设计之四书五经[转自2004程序员杂志]--上篇

C++程序设计之四书五经 作者:荣耀 C++是一门广泛用于工业软件研发的大型语言.它自身的复杂性和解决现实问题的能力,使其极具学术研究价值和工业价值.和C语言一样,C++已经在许多重要的领域大获成功.然而,一个不可否认的现实是,在低阶程序设计领域,C++挤压着C同时也在承受着C的强烈反弹,而在高阶程序设计领域,Java和C#正在不断蚕食着C++的地盘.也许C++与C合为一体永远都是一个梦想,也许Java和C#的狂潮终将迫使C++回归本位— 回到它有着根本性优势的开发领域:低级系统程序设计.高级大

(转载)如何学习C语言

一 ,怎样学习C语言      很多人对学习C语言感到无从下手,经常问我同一个问题:究竟怎样学习C语言?我是一个教师,已经开发了很多年的程序,和很多刚刚起步的人一样,学习的第一个计算机语言就是C语言.经过这些年的开发,我深深的体会到C语言对于一个程序设计人员多么的重要,如果不懂C语言,你想写底层程序这几乎听起来很可笑,不懂C语言,你想写出优秀高效的程庌輌这简直就是天方夜谭.为什么C语言如此重要呢?      第一:C语言语法结构很简洁精妙,写出的程序也很高效,很便于描述算法,大多数的程序员愿意使

C语言教材推荐

<C语言程序设计>谭浩强 集成学习环境(C语言) C语言学习系统 很多人对学习C语言感到无从下手,经常问我同一个问题:究竟怎样学习C语言?我是一个教师,已经开发了很多年的程序,和很多刚刚起步的人一样,学习的第一个计算机语言就是C语言.经过这些年的开发,我深深的体会到C语言对于一个程序设计人员多么的重要,如果不懂C语言,你想写底层程序这几乎听起来很可笑,不懂C语言,你想写出优秀高效的程序,这简直就是天方夜谭.为什么C语言如此重要呢? 第一:C语言语法结构很简洁精妙,写出的程序也很高效,很便于描述

使用R语言计算均值,方差等

R语言对于数值计算很方便,最近用到了计算方差,标准差的功能,特记录. 数据准备 height <- c(6.00, 5.92, 5.58, 5.92) 1 计算均值 mean(height) [1] 5.855 2 计算中位数 median(height) [1] 5.92 3 计算标准差 sd(height) [1] 0.1871719 4 计算方差 var(height) [1] 0.03503333 5 计算两个变量之间的相关系数 cor(height,log(height)) [1] 0