#include"malloc.h"
int main(void)
{
// int i;
int a[4][4]={2,1,7,88,99};
int (*p)[4];
p = a;
printf("%d\n", p);
printf("%d", *p);
}
P和*P值一样
因为数组的地址也是数组第一个元素的地址。p是数组的地址,*p是数组第一个元素的地址。
p=a,表示整个数组的首地址;*p
表示第一行的首地址,这个也是数组的首地址
因为它们都代表数组的首地址
p=a 相当于p=&a[0][4],结果是2;
int *p[4]相当于p[0]代表一个int型指针,p[1]代表一个int型指针,*p的值为2