区分:指针数组 / 数组指针
指针数组(int *P[10])
是一个指针数组,含义是每一个变量值代表的是一个指针。例如 P[0]、P[1] 都是一个指针,P[0] ~ P[10] 就是十个指针。
数组指针(int (*P)[10])(暂且这么叫吧)
下面这个程序和运行结果可以很好的解释(gcc下编译报警告,指针类型不一致,不过无伤大雅)。


这个运行结果大致意思是说,*P[4] 是一个装了四个数组的指针的数组(即数组首地址,二维数组中就是每一行的行首地址)。这里只用二维数组做了验证,其实就相当于多个一维数组而已。

浙公网安备 33010602011771号