输出2 5 数组类型指针强制类型转换成int*
输出: 0x100014 0x100001 0x100004
0x4 0x2 00 00 00 一个字节8个比特位
大括号里面是圆括号,sun
p指向a的起始地址,p是一个含4个整形元素的指针
p = a; 等价于 int () [4] = int () [5];
p[4] 等价于*(p+4) p[4][2] 等价于*(*p+4)+2)
结果-4的补码当作地址输出,而地址是无符号数,输出FF FF FF FC
*(aa+1) 相当于aa[1], 第二行的地址解引用,就是第二行首元素的地址
关于指针指向数组详细说明:
&a代表整个数组 &a+1代表路过整个数组的下一个同类型int[2][5]*的数组
a代表二维数组首元素地址 *a代表int[5]一维数组的首元素地址
head bigger!
pa+1 首元素地址加上一个char*型长度,即第二个元素
这个图再画一遍