Pointers On C 读书笔记

回家花了几天的时间把Pointers On C读完了,与其说这是一本详细讲解指针的书,还不如说是一本详细介绍C语言的书籍,ACCU主席曾说,这是他见过的最好的C编程入门书籍,所言不虚,但这本书也可以作为C的高级读物,对于理清C的很多细节很有好处。

第1章 快速上手

用一个读入字符串并打印相应范围内的字符来说明C语言的一些特性,例子的难度对于初学者还是比较大的,可以暂时跳过不看。

第2章 基本概念

介绍了一个程序是如何翻译执行的,并介绍了C语言的词法规则,同时提出了程序风格的重要性,全书最大的特色莫过于时刻出现的警告和编程提示,对读者来说是一个很好的提醒。

第3章 数据

从这一章,精华在于static关键字在全局函数还有局部变量上的不同含义、C语言中四种不同的作用域和链接属性的不同。

第四章 语句

介绍C语言的语句,这部分大多数教材大同小异。

第5章 操作符和表达式

最大的收获,莫过于左值和右值的区别,编译器能够明确知道地址所在的变量,是左值,左值都可以做右值,左值表示地址,右值表示数据。

第6 章 指针

到了全书最精华的部分了,这部分只是介绍了指针的初步,但丰富的图例以及作者耐心细致的态度就已经很让人赞叹了。

第7章 函数

函数的原型的重要性,递归的正确使用,stdarg宏此章都有涉及,全书很多知识都交织着,作者在介绍很多知识的时候,往往会接着介绍很多相关的知识,这点做得非常好。

第8章 数组

这章强调了数组和指针之间的关系,指出数组名实际上就是指向数组第一个元素的指针,多维数组只不过是数组元素是数组的特殊数组罢了,并讨论了数组作为函数参数时和指针之间的关系

第9章 字符串、字符和字节

字符串常量返回的是一个常量字符指针,介绍了标准库中常用的字符串操作函数。

第10章 结构和联合

用丰富的图例解释了结构的内存分布,指向结构的指针的间接访问和直接访问,运用联合实现位段,以及它可能出现的移植性问题。

第11章 动态内存分布

介绍标准库中malloc、free、calloc、realloc函数,并总结了使用动态内存时常犯的一些错误。

第12章 使用结构和指针

运用结构和指针,介绍单链表和双链表,这部分内容其实和数据结构的关联性更大一些,映像比较深刻的是,为了不单独讨论链表头节点插入的情况,而使用指向当前节点的下一个节点的指针的指针,很是新颖。

第13章 高级指针话题

函数指针、指向数组的指针、指针数组、各种复杂的声明,运用函数指针数组实现跳表、命令行参数、“xyz”+2,很是精彩的一章。

第14章 预处理器

介绍C语言的预处理器,全面而啰嗦。

第15章 输入输出函数

和TCPL大同小异

第16章 标准库

比TCPL好的一点是,介绍locale.h,虽然我还是没看太懂,不如TCPL的是,到标准库这块,就不如TCPL那么凝练了。

第17章 经典抽象数据类型

很有意思的一章,不是数据结构的教材,但是分析各种数据结构的方法和技术却比很多数据结构教材好得多。

第18章 运行时环境

通过C的汇编代码来分析具体环境下的运行堆栈的情况,很是扎实的一章,还提出了一些如何改进程序性能的tricks。

 

全书读完,觉得如果说TCPL是凝练深刻的代表的话,这本书则像一个耐心的老师,一点点教你C语言。

posted @ 2013-01-27 21:26  lilde90  阅读(110)  评论(0)    收藏  举报