`在书上看到了``说数组名字就是指针``
这是为什么呢```
这么说吧,对于编译器而言,
你定义一个数组:
int a[][];
相当于定义了一个指针:
int **a;
你说的一个是数组名称,一个是地址,
的确不一样,但是这是对于你而言;对于编译器而言,两者是一致的,实现同样的效果。
比如上课的时候,无论老师叫你的名字还是叫你的学号,
你都会站起来回答问题一样
[此贴子已经被作者于2007-11-18 12:59:42编辑过]
----------------解决方案--------------------------------------------------------
书上要是这么说
那这本书就是错的
数组明只有在作为函数参数的时候才等于指针
见the c programming language或c专家编程
----------------解决方案--------------------------------------------------------
数组是一个连续的内容空间。当然要用地址找到这个空间。
所以“数组名”就是这个数组首元素的地址。(不然你怎么访问数组!)
不过数组名不等价于指针。(特别是多维数组,一维以上的)
//
[此贴子已经被作者于2007-11-18 13:06:46编辑过]
----------------解决方案--------------------------------------------------------
书上要是这么说
那这本书就是错的
数组明只有在作为函数参数的时候才等于指针
见the c programming language或c专家编程
数组等于指针 这种说法从何说起???????????
----------------解决方案--------------------------------------------------------
数组等于指针 这种说法从何说起???????????
数组名
打错了个字而已
但是错字也不影响你的理解吧
好歹明和名发音一样啊
----------------解决方案--------------------------------------------------------
我就是不明白为什么``数组的名字``是一个地址呢??
如果它不是地址的话,你觉得数组在计算机里面如何寻址呢?
数组就是一个连续的存储空间,谁都不知道系统给它分配的空间具体在哪,所以不管它分在哪,你都能用数组名找到呗.
----------------解决方案--------------------------------------------------------
数组名
打错了个字而已
但是错字也不影响你的理解吧
好歹明和名发音一样啊
差之毫厘,谬以千里。
再说我谈的是理解的问题,不等同于编译器的实现。
何必抱着理论死啃?
----------------解决方案--------------------------------------------------------
差之毫厘,谬以千里。
再说我谈的是理解的问题,不等同于编译器的实现。
何必抱着理论死啃?
一, 我从来不是抱着理论死啃的人
二, 我回答的是楼主的问题,不知道和你有什么关系
over
----------------解决方案--------------------------------------------------------
数组名相当于一个常量指针,不能修改.
----------------解决方案--------------------------------------------------------
LS版主好像说错了,常量指针是指指向常量的指针,指针常量是指指向一个指针且不被修改,数组名应该相当于指针常量~
----------------解决方案--------------------------------------------------------