Chinaunix首页 | 论坛 | 博客
  • 博客访问: 180986
  • 博文数量: 54
  • 博客积分: 1831
  • 博客等级: 上尉
  • 技术积分: 625
  • 用 户 组: 普通用户
  • 注册时间: 2007-04-12 12:50
文章分类

全部博文(54)

文章存档

2009年(11)

2008年(43)

分类:

2008-05-09 22:29:57

第四章
令人震惊的事实:数组和指针并不相同


。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
还有些问题,关于基础的c,比如const,volalite 的具体的意义,sizeof 等的意思?
还有就是extern 的问题,在c里可以不说明,但是在c++里为什么就必须说明呢?因为.....
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
错误的说法:“数组定义等于指针的外部声明”
为什么人们认为指针和数组始终应该是可以互换的呢?答案是对数组的引用总是可以写出对指针的引用,而且
确实存在一种指针和数组的定义完全相同的上下文环境。不幸的是这只是一种极为普通的用法,而并非所有的
情况下都是如此。

回顾两个术语:
定义:  只能够出现在一个地方   确定对象的类型并分配内存,用于创建新的对象
声明:  可以多次出现                    描述对象的类,用于指代其它地方定义的对象

小启发
声明相当于普通的声明:它所说明的并非自身,而是描述其他地方创建的对象。
定义相当于特殊的定义:它为对象分配内存
。。。。。。。。。。。。
左值和右值的区别(p83)
左值在编译时可知,右值在运行时可知
可修改的左值(一般的指针)和不可修改的左值(数组名)
。。。。。。。。。。。。
还有一种发生莫名错误的可能——当你“定义为指针,但是以数组方式引用时”(p85)
指针数组的区别:
如果指针有一个下标[I],就把指针的内容叫上I作为地址,从中提取数据。。。。。。

在ANSI C 中,初始化指针是所创建的字符串常量被定义为只读。
与指针相反,由字符串常量初始化的数组是可以修改的。
阅读(911) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~