- 论坛徽章:
- 0
|
原帖由 Delphji 于 2007-7-21 17:23 发表 ![]()
求才学谭的书呢!
那CU上是“求”的人一大堆哦。
其实谭所著还是挺不错的,就《C程序设计》这本书而言,谭也是娓娓道来,能让你迅速进入C的世界
。在章节上安排比较合理,知识点承上启下。存在的就是合理的。
这么多大学都在使用,足见它的影响力非同小可。
第一章:C语言概论
第二章:程序的算法
第三章:数据类型运算符与表达式
第四章:最简单的C程序设计
第五章:选择结构程序设计
第六章:循环控制
第七章:数组
第八章:函数
第九章:预处理命令
第十章:指针
第十一章:结构体共用体
第十二章:位运算
第十三章:文件
第十四章:常见错误及程序调试
还有库函数附录什么的
娓娓道来,深入浅出。除了文件一章有关feof 及对EOF 的描论有些问题外,
也许是我现在功力太低,找不出太多的错误。也许写到最后,谭老师累着了,或是浮燥了
总体来说是本好书。(位运算那章我贴出来的部份是配套答案书上的代码,不是书的主体)
今天我总算全书看完。谭老师对指针的讲解比较好,一读就明白。不过没有有胆对数组名做个大胆的结论
只是强调数组名代表数组的首地址,让初学者对 &array不好理解。
从CU上别人的讨论我学到了:数组名除了是指向数组元素类型指针外,数组名还代表整个数组.
比如 a[][3]={11,12,13,21,22,23} 则a是指向数组的首行的指针,指向类型是一唯数组。值为数组的首地址。类型为int (*p)[3] 而 &a呢,此时的a代表整个数组,对a做 &操作产生的指针是指向整个数组类型的也就是 int *(p)[][3] 可谭老师只强调是首地址,按他所说,对一维数组 a[]={1,2,3}, &a意思就不好表达了,对地址取地址,呵呵。 其实 a 是指向数组元素的指针 类型为数组元素(这个结论对多维数组应把它看成数组的数组)
而&a 的指针类型 是 int (*p)[3].
[ 本帖最后由 cviolet 于 2007-7-21 18:33 编辑 ] |
|