首先,以下几句话帮助我在数组与指针的关系理解以及二维数组的理解中起到了很大作用:
1.数组名是指向数组中第一个元素的常量指针;
2.数组名是这个数组的首地址;
3.首地址是一段内存空间中第一个存储单元的地址;
4.指针变量的加减,以指针所指向的类型空间为单位进行偏移。
一维数组
ptr=&height
出错原因:&可以用在数组名上,&height是对数组名取地址,这时取得的是整个数组地址(即指向包含10个元素的int型数组)不可以赋值给指针,会产生编译错误。
二维数组
二维数组的一个存储单元,是一个一维数组。
例:a是一个二维数组的首地址,指向数组a[3][4]的第一个存储单元a[0];
a[0]是一个一维数组的首地址,指向数组a[0]的第一个存储单元a[0][0];
a