user-0 提问: 学习C语言用什么书比较好？

回复:
user: user-1
content: 引用 8 楼 lovesmiles 的回复:把下面这些书看完就不用愁了  2. C程序设计语言 作者 : Brian W.Kernighan/Dennis M.Ritchie  出版社 : 清华大学出版社 评语 : 第1本 《C程序设计语言》 Brian W. Kernighan / Dennis M. Ritchie 这本书又称为 R&K C，还有谁能比C语言之父对C语言更有发言权的呢？推荐看英文版。你会惊讶于在短短不到200页的篇幅内，这两位牛人将C语言描述的这么清晰。即使不专门学C语言的人也可以拿出来翻翻    	 3. C陷阱与缺陷 作者 : 凯尼格  出版社 : 人民邮电出版社 评语 : 第2本 《C陷阱与缺陷》Andrew Koenig Andrew Koenig的成名作，能帮助初学者减少90%的错误。一些错误（比如赋值符、运算符优先级等）还是不时的会在自己的程序里出现，只是已经打过预防针了，很容易发现。另外作者写了一本《Accelerated C++》，据说是C++的最佳入门书，狠赞！！  	 4. C专家编程 作者 : Peter Van Der Linden  出版社 : 人民邮电出版社 评语 : 第3本 《C专家编程》（LinDen,P.V.D） 一看书名就知道这丫不能拿来入门用的，第一次看的时候够折磨大脑的。作者声称，编程的唯一原因是因为乐趣。相比之前的几本书，这本书还介绍C语言运行的环境，更全面地考察了C语言。深入分析了C语言中一些容易混淆的概念，如复杂的声明和定义、数组和指针、链接和运行时库、内存等。很值得一读。 顺便一提：链接库可参考《深入理解计算机系统》的动态链接库一章，写得更易读  	 5. 编程精粹 作者 : Steve Maguire  出版社 : 人民邮电出版社 评语 : 第4本 《编程精粹：编写高质量C语言代码》 《Writing Solid Code》 Steve Maguire 这是我读到C语言书中最惊叹的一本，尽管写出没有bug的程序不太可能，但按照作者提供的方法，可以离这个目标很近。本书关注的更多是怎么使用C语言开发工业级产品的问题。 这本书源自作者十几年不断的追问自己两个简单的问题： 1）怎样才能自动地查出这个错误？ 2）怎样才能避免这个错误？ “他的另一部名著Debugging the Development Process（中文版《微软  	 6. C Interfaces and Implementations 作者 : David R. Hanson  出版社 : Addison-Wesley Professional 评语 : 第5本 《C Interfaces and Implementations》 David R. Hanson 这本据说为唯一一本能和R&K C并驾齐驱的书，可惜中文版众口一致说太烂，无处可载电子版，影印版跳票多年，原版USD 54.99实在承受不起，囊中羞涩，奈何奈何。想念多年，至今不能一睹芳容，深以为憾。  	 7. C标准库 作者 : P. J. Plauger  出版社 : 人民邮电出版社 评语 : 前面5本差不多够了，另外推荐两本，精力过剩的可以翻翻 第6本 《C标准库》P. J. Plauger 本书介绍C标准库的实现，书中有较为详尽的代码。虽然这本书年代久远，现在的实现肯定和以前也有差别，但是还是很有参考价值，特别是对C标准库的实现有兴趣的人。中文版太贵，英文电子版看得太累，还是以后有地方借的时候再继续看。  lou zhu kan le ji ben le ?

user: user-0
content: 引用 10 楼 Zidane_2014 的回复:最近在看《C和指针》，感觉不错。  适合有一定编程经验的人学习。  这个我看完了的。。。

user: user-2
content: 最近在看《C和指针》，感觉不错。  适合有一定编程经验的人学习。

user: user-3
content: 把下面这些书看完就不用愁了  2. C程序设计语言 作者 : Brian W.Kernighan/Dennis M.Ritchie  出版社 : 清华大学出版社 评语 : 第1本 《C程序设计语言》 Brian W. Kernighan / Dennis M. Ritchie 这本书又称为 R&K C，还有谁能比C语言之父对C语言更有发言权的呢？推荐看英文版。你会惊讶于在短短不到200页的篇幅内，这两位牛人将C语言描述的这么清晰。即使不专门学C语言的人也可以拿出来翻翻    	 3. C陷阱与缺陷 作者 : 凯尼格  出版社 : 人民邮电出版社 评语 : 第2本 《C陷阱与缺陷》Andrew Koenig Andrew Koenig的成名作，能帮助初学者减少90%的错误。一些错误（比如赋值符、运算符优先级等）还是不时的会在自己的程序里出现，只是已经打过预防针了，很容易发现。另外作者写了一本《Accelerated C++》，据说是C++的最佳入门书，狠赞！！  	 4. C专家编程 作者 : Peter Van Der Linden  出版社 : 人民邮电出版社 评语 : 第3本 《C专家编程》（LinDen,P.V.D） 一看书名就知道这丫不能拿来入门用的，第一次看的时候够折磨大脑的。作者声称，编程的唯一原因是因为乐趣。相比之前的几本书，这本书还介绍C语言运行的环境，更全面地考察了C语言。深入分析了C语言中一些容易混淆的概念，如复杂的声明和定义、数组和指针、链接和运行时库、内存等。很值得一读。 顺便一提：链接库可参考《深入理解计算机系统》的动态链接库一章，写得更易读  	 5. 编程精粹 作者 : Steve Maguire  出版社 : 人民邮电出版社 评语 : 第4本 《编程精粹：编写高质量C语言代码》 《Writing Solid Code》 Steve Maguire 这是我读到C语言书中最惊叹的一本，尽管写出没有bug的程序不太可能，但按照作者提供的方法，可以离这个目标很近。本书关注的更多是怎么使用C语言开发工业级产品的问题。 这本书源自作者十几年不断的追问自己两个简单的问题： 1）怎样才能自动地查出这个错误？ 2）怎样才能避免这个错误？ “他的另一部名著Debugging the Development Process（中文版《微软  	 6. C Interfaces and Implementations 作者 : David R. Hanson  出版社 : Addison-Wesley Professional 评语 : 第5本 《C Interfaces and Implementations》 David R. Hanson 这本据说为唯一一本能和R&K C并驾齐驱的书，可惜中文版众口一致说太烂，无处可载电子版，影印版跳票多年，原版USD 54.99实在承受不起，囊中羞涩，奈何奈何。想念多年，至今不能一睹芳容，深以为憾。  	 7. C标准库 作者 : P. J. Plauger  出版社 : 人民邮电出版社 评语 : 前面5本差不多够了，另外推荐两本，精力过剩的可以翻翻 第6本 《C标准库》P. J. Plauger 本书介绍C标准库的实现，书中有较为详尽的代码。虽然这本书年代久远，现在的实现肯定和以前也有差别，但是还是很有参考价值，特别是对C标准库的实现有兴趣的人。中文版太贵，英文电子版看得太累，还是以后有地方借的时候再继续看。

user: user-0
content: 引用 5 楼 truelance 的回复:c++都会了，没必要专门看c的书。 如果真想看的话，可以下载K&R的<The C Programming Language>第二版和<ANSCI C Standard>99版/2011版都可以。这些是当手册或字典查的，不用专门看。 另外可以找一本<C专家编程>看一遍，了解一下。 对于C我觉得有点不放心，因为我看到一些陌生的用法和关键字 比如:  .extern xxx  .global .long  前面加点的这种用法，还有就是像 struct 啊，volatile啊这类在C++用的比较少的东西。。。 所以刚一看就觉得有好多不懂，就比较怵。。。  不过因为操作系统内核好像都是用C开发的，所以觉得这个语言应该比较高深，想要去深入了解下。非常感谢你的推荐。

user: user-0
content: 引用 4 楼 jerry_dqh 的回复:不需要了，但是要学习一下计算机原理，简单看一下汇编原理 好的，汇编原理我学过的。 对于C我觉得有点不放心，因为我看到一些陌生的用法和关键字 比如:  .extern xxx  .global .long  前面加点的这种用法，还有就是像 struct 啊，volatile啊这类在C++用的比较少的东西。。。 所以刚一看就觉得有好多不懂，就比较怵。。。

user: user-4
content: c++都会了，没必要专门看c的书。 如果真想看的话，可以下载K&R的<The C Programming Language>第二版和<ANSCI C Standard>99版/2011版都可以。这些是当手册或字典查的，不用专门看。 另外可以找一本<C专家编程>看一遍，了解一下。

user: user-5
content: 不需要了，但是要学习一下计算机原理，简单看一下汇编原理

user: user-0
content: 引用 2 楼 truelance 的回复:《linux内核源代码情景分析》 《linux内核完全注释》 《linux内核完全剖析》 都可以  网上找到了PDF，看了下感觉还行，但是真的不用去系统的学习下C语言吗？

user: user-4
content: 《linux内核源代码情景分析》 《linux内核完全注释》 《linux内核完全剖析》 都可以

user: user-6
content: c++都学过了，c肯定可以看懂啊，直接看源码吧