C primer plus 多维数组的总结
理解zippo是地址的地址
先声明一个int类型的多维数组: int zippo[4][2] ;
zippo = zippo[0] = &zippo[0][0]
值 ↑ 地址↑
zippo[0] 代表的是值,但是 是zippo[0][0]的地址 所显示的值。
*zippo = zippo[0] 。
zippo + 1 和 zippo[0] + 1 的地址不同。
zippo+ 1 的地址是第二个数组的第一个元素。
zippo[0] + 1 的地址是第一个数组的第二个元素。
声明指针数组
eg:int (*ptr)[4] = zippo;
声明一个指针内含4个int类型的指针数组
int *ptr[4] = zippo;
错误,声明的指针是内含4个int指针的数组,ptr和[4]先结合。