下面是打印结果
010BFE0C
010BFE03 // 瞎扯蛋吧,我不信
010BFE24
-------------------------------------------------------------
"在数组中数组名本来不就是数组的首地址嘛" --- 那最重要的数据类型信息呢?这种瞎扯B的话,我就不多说了。
-------------------------------------------------------------
我只说一点『数组 可以隐式降阶』,也就是 TYPE a[N] 可以隐式转化为 TYPE* 类型。
(
举个例子,比如 int a[2]; 此时 a 是元素类型为 int 的数组,那么 a 可以隐式转化为其元素类型的指针,即 int*;
举个例子,比如 int a[2][3]; 此时 a 是元素类型为 int[3] 的数组,那么 a 可以隐式转化为其元素类型的指针,即 int (*)[3];
……
}
所以
arr+1 中 arr 类型降阶为 int (*)[3],所以 arr+1 指向 { 4, 5, 6 };
*arr+1 中 arr 类型降阶为 int (*)[3],所以 *arr 类型为 int [3],内容为 { 1, 2, 3 }; *arr 再次降阶为 int*,所以 *arr+1 类型为 int*, 指向 2;
&arr+1 中 arr 为 int [3][3],所以 &arr 类型为 int (*)[3][3] 类型,指向 {1,2,3,4,5,6,7,8,9};所以 &arr+1 指向 {1,2,3,4,5,6,7,8,9} 随后的下一个 int[3][3] 空间。
[
本帖最后由 rjsp 于 2015-1-12 10:59 编辑 ]