前言
本期推荐C语言学习必读书籍-C语言三剑客。以下内容最好在读过《C primer plus》之类的基础书籍之后阅读。
《C陷阱与缺陷》—评分8.9
如书名一样,这本书从词法分析、语法语义、连接、库函数、预处理器、可移植性等方面介绍了C语言所谓的“缺陷”,但实际上无论是对于新手还是已经使用过很久C语言的开发者都值得一看,可以说是一本识坑指南。
当然里面很多点实际上已经可以用很多现代工具来检测,比如lint工具,编译器的强制检查等等,但是即便如此,也需要在你了解这些之后,才能真正意识到它们的存在。
本书适合新人阅读,从中了解在平常写代码的适合应该注意哪些问题。
《C和指针》—评分9.0
毋庸置疑,指针是C语言中最重要的概念,也是对初学者来说最难理解的一部分,而这本书恰恰就像是专门为你解决这个难题的。当然了,不要被书名误导了,虽然说的是C和指针,但实际上覆盖了语句、操作符、表达式、数组、指针、函数、字符串、结构和联合等几乎所有重要的C编程话题,不过相对于其他书籍,它在指针方面的介绍更加透彻。
另外对一些常用的基本数据结构也有很好的介绍,比如队列,栈,链表等。同时还对一些常用的标准库函数进行了介绍。
本书适合进阶学习,更加细致地了解C语言的各个特性。
《C专家编程》—评分9.2
你知道K&R C和ANSI C有什么区别吗?如果你不知道的话,可以看看本书。
C里面有哪些奇怪的语言特性?它在其他语言看来,就是bug!
如果你觉得对数组和指针的理解还不够深刻,没关系,这本《C专家编程》又不厌其烦的来进行讲。除此之外,对于一些复杂的声明,本书也做了非常多的讲解,以后无论多复杂的声明你应该能分辨了。在此之前,你能看懂下面的声明吗?1
void (*signal(int sig,void(*func)(int)))(int);
除此之外,如果你之前从来不知道什么是链接,只是用IDE点击运行程序,那么链接部分能帮助你初步理解链接器到底做了什么,而你也会慢慢明白其重要性,这是构建大型程序必备的基础知识。
程序运行起来后,其内存布局又是怎样的?什么是堆栈?如果这些你还不知道,那么你真该抽时间好好学习学习了。
最后一章又从C的角度带你进行了一次C++之旅,C++真的有那么神秘吗?
总结
以上三本书,就是今天的推荐,以上三本书的难易程度为《C陷阱和缺陷》<《C和指针》<《C专家编程》。即便如此,也建议你在具备一定基础之后再去阅读。如果你无法读懂,那么说明你还有很大的进步空间,我自己最开始的时候也是看不懂的。