阮一峰:学习C语言的教材

我的C语言是自学的,这些年看过不少教材。

下面,我对其中一些教材做个点评。

1. How to Think Like a Computer Scientist: C version

这是我读过最易懂的C语言教材。

虽然它只讲解最基本的语法,但是写得特别好懂,深入浅出,读起来不觉得累,而且它还允许免费下载。我认为,这是C语言的首选入门教材。

下载网址:http://prof.beuth-hochschule.de/scheffler/lehre/programmieren-in-c/

2. C Primer Plus C Programming: A Modern Approach (《C语言程序设计:现代方法

上面这两本,都是著名的C语言初级教材,都是厚厚的大部头。

我通读过它们,感觉都写得不错,都值得推荐。但是因为这两本书定位类似,内容重复,相比之下,我觉得C Primer Plus可能更适合中国读者的思维,更易读一些。

3. C Programming Language (2nd Edition) (《C程序设计语言》)

这是最著名的C语言书籍。

但是,它不是写给初学者看的,更偏重C语言的编程技巧和算法思维。我读过两遍,还是觉得很多地方没读懂。

4. 国产教材

通常来说,国产教材质量不高,不值得推荐。但是有两本,我想特别提一下。

《零基础学C语言》,康莉等著,机械工业出版社,2009。

这本是我在图书馆里偶然捡起来的,翻了几页,发现是原创的,而且写得比较认真,代码解释详尽,行文错误少,就把它读完了。我认为,在国产教材中,这本书的质量很高,值得推荐。

Linux C编程一站式学习

这本书在国产书籍中罕见地采用了GFDL许可证,http://learn.akae.cn有在线阅读,可以免费下载。这一点值得高度肯定。

但是,正如前言所说,它的主要资料来源是两本英语教材《How To Think Like A Computer Scientist: Learning with C++》和《Programming from the Ground Up》,以及一些教师的上课讲义,然后拼在一起,做成一本书。所以,造成它的体系比较生硬,缺乏整体感,衔接得不好,很多地方没有做到由潜入深、循序渐进。所以,我觉得这本书不适合初学者,可以当做手册查资料。

5. Beginning Linux Programming / 《Linux程序设计》

这是我现在正在阅读的书。我看它在Amazon上排名Linux C编程的第一位,就选了它。

它主要讲解如何用C语言调用Linux的系统API,偏重基本概念的解释,我已经读了两章,感觉还不错。

下面想听听大家的意见。

我现在的C语言,到了这样一个水平:语法已经基本掌握了,可以独立开发一些小程序。下一步,我想进一步提高C语言水平,主要用于Linux开发。

大家能不能推荐一些C语言的中级教材?

 

7 收藏 8 评论

相关文章

可能感兴趣的话题



直接登录
最新评论
  • simon8410   2011/09/19

    推荐一本:Linux Programming by Example: The Fundamentals,作者:Arnold Robbins。很适合结合进一步学习C开发,还是学习Linux系统编程很好的入门。

  • winner   2011/09/19

    好好学习一下汇编。不然你仍然理解不了c语言的精髓。

  • 个人拙见,可以学习汇编,这样不论是C还是C++。理解的都要深刻写,C语言的精髓就是它是介于高级语言和低级语言之间的语言,他既有高级语言的特点,也有汇编语言的特点,所以,可以试试学习汇编

    另外。我倒觉得C语言入门的话,谭浩强的"红皮书"不错

  • 《程序设计思想》--铁公鸡出版,北航尹宝林老先生编著,不需要别的教材了,拿译本K&R做做参考,随手翻。软件工程思想简洁而深刻,并且配有在线编程网站。一个学期下来,不光C语言,数据结构(虽然书中没有明确说明,但过渡自然,深入浅出,容易理解),基本的编程算法,都会了,而且水平还不错。

  • longan   2013/08/22

    c缺陷与陷阱,c专家编程。值得推荐

  • James Pan   2013/10/02

    龙书!学习编译原理,动手写C99的编译器,把C编译成三地址码或汇编之后,对C语言的理解加深了。了解语言的实现有助于学习语言

  • Mick   2014/05/28

    看书重要,做题更重要,要找一本偏重习题且提供参考答案的好书多看、多练、多学。

跳到底部
返回顶部