C语言之四书五经
作者:乾坤一笑
C语言教学早就进入了我国各大高校的教程,但是大家对它的认识以及重视程度还很是不够。很多人认为C语言无非是一种教学语言,是一种工业语言,它很老了,该淘汰了,比不上VC++、Java、C#等新兴语言牛B,所以不是很重视C语言。我认为,这些朋友是受了某些舆论的误导才会有此看法。C语言是各大操作系统的基础,Unix、Linux、Windows其内核都清一色是C语言开发的,(某些地方是和汇编语言混合开发的),君不见Windows API都是C语言函数的接口?Unix/Linux绝大多数应用都是C语言开发的;Windows应用程序用纯API开发已然不多,大多都是依靠某种Application Framework,比如所谓的VC++,其实就是指VC IDE + C++语言 + MFC(现在重点已转向ATL、WTL),但是Windows服务、网络、驱动程序等底层软件,还是C语言开发的。各种语言的编译器,包括java虚拟机,都是用C语言开发的。各种嵌入式设备,如手机、PDA也都是C语言开发的。C语言历史悠久,其内容也绝非谭浩强老师的《C语言程序设计(第二版)》所描述的那么简单——那本书只是针对中国国情的教学入门书而已(并且很多地方都不符合ISO C 99标准了)。
论坛中很多还是高校的学生总喜欢问:那种语言好?学那种语言有前途?这种问题天天在讨论,永无休止。其实我觉得大家所关心的,无非是那种语言更有“钱途”,学习那种语言毕业后能够轻松找到高薪的工作——当年我也是这么想。那么,在这里我要给这些朋友吃一剂定心丸了——C语言大有应用市场,国内知名的四家电信制造企业巨龙、大唐、中兴、华为(简称“巨大中华”,如果你对此四大家耳生,我劝你应该google一下学习学习了)无不热招C开发人才;各大外资、世界500强信息产业亦是如此(去51job.com上查查就明白了)。只要你精通C语言,即使你不了解C++等其他语言,找到高薪工作也是轻松得很。
为什么我如此推崇C语言,而对C++语言尚未提半字?一方面受本篇题目的限制(偶不能跑题呀),另一方面,我认为C语言比C++好学得多,学习成本也很低。为什么这么说?下文中所列举的4部C语言经典巨著,平均每本定价不到40元,如果你依次把它们学透了,那就够了,不需要再买C语言书了(事实上也没什么其它书好买了)。下一步就是从实践中学真知了——一方面从工程项目中锻炼,另一方面从分析老外源码(比如linux源码、GNU源码等)中提高,功夫下到,收获自然来。而C++语言,拿我自己来说,买书投入的资金已经超过千元了,也认真学习了1~2年(时断时续)了,终究对标准C++语法彻底理解的部分占不到40%。引用vckbase论坛一大牛“七猫”兄的话说:“我不打算再往C++书上投钱了”,那简直是无底洞。从另一方面说,这几本C语言经典巨著,对于学习C++的PO、OB设计也是很有帮助的(PO、OB应该算是C++的基本功了,PO指的是Procedure Oriented, OB指的是Object Based);国外的顶尖C++高手,往往也是C语言高手。
转自:http://www.vckbase.com/document/viewdoc/?id=1313
好,罗嗦了这么,下面就介绍C语言的几本经典之作。另外BTW一句:很多朋友一定会问:为什么我们学校不用这些书做教材?这个问题就很难回答了,我觉得你应该致电国家教育部、或你们学校教导处询问,人家自然会给你个说法。:)不过有一个原因大家都能理解,(冒死说句大不敬的话),教这些书估计你的任课老师未必罩得住,也说不准。:) 因为这些都是国际上Hacker级的巨著呀。(看我多大方,把我的所知毫无保留的都传授给你了:p)
依据我给出的顺序,你应该很容易自学这些书(均有中文译本,此处给出的都是中文版的信息,在各大电子科技书店都应该买得到):
一、The C Programming Language C程序设计语言(第2版·新版) 原出版社: Prentice Hall PTR 作者: [美]Brian W.Kernighan,Dennis M.Ritchie 译者: 徐宝文 李志 书号: 7-111-12806-0 页码: 258 开本: 16开 版次:2-1 丛书名: 计算机科学丛书 出版社: 机械工业出版社 出版日期: 2004-1-1 定价: ¥30.00 |
二、Pointers on C C和指针 原出版社: Pearson Education 作者: Kenneth A.Reek 译者: 徐波 书号: 7-115-11456-0 页码: 450 开本: 16开 版次:1-1 丛书名: C和C++实务精选 出版社: 人民邮电出版社 出版日期: 2003-9-1 定价: ¥55.00 |
三、Expert C Programming C专家编程 原出版社: PH PTR 作者: Perter Van Der LinDen 译者: 徐波 书号: 7-115-10627-4 页码: 291 开本: 16开 版次:1-1 丛书名: C和C++实务精选 出版社: 人民邮电出版社 出版日期: 2002-12-1 定价: ¥40.00 |
四、C Traps and Pitfalls C陷阱与缺陷 原出版社: Addison Wesley 作者: Andrew Koenig 译者: 高巍 书号: 7-115-10623-1 页码: 172 开本: 16开 版次:1-1 丛书名: C和C++实务精选 出版社: 人民邮电出版社 出版日期: 2002-11-1 定价: ¥30.00 |