数组名和指针都可以标志地址,但是要注意:
数组名是常量,一旦你定义了一个数组,那么数组名无法被赋值。
指针是变量,是可以被赋值的!
例如:
int a[10];
int b[10];
a=b;//错误!!!不能对a赋值
注意下面
int *p;//定义一个指针
p=a;//OK,p现在指向a的首地址。
p=b;//OK,p现在指向b的首地址。
一句话:数组名是常量,指针是变量!
数组名不是指针,是地址常量,所以赋值报错。
那显示a的时候为什么不是十六进制的地址呢?
要加取址符啊。这里a的意思相当于地址的代号,如同一个人。有名字和绰号。地址是名字 a相当于绰号
数组名都是指针,但是都是一个常指针。本身是不可改变的。