C语言问题int a[2][3],*p[3]之后为什么p[0]=&a[1][2]是正确的啊

int a[2][3],*p[3]之后为什么p[0]=&a[1][2]是正确的啊

int *p[3] 的意思是p中的每一个元素存放的是一个整形变量的地址
所以给p中的元素赋值 要取某一个整形变量的地址
所以p[0]= &a[1][2]是正确的...
意思是把a[1][2]这个变量的地址赋给p[0]
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-06-24
int a[2][3]就是一个数组,所以a[1][2]就是一个int整数,所以&a[1][2]就是一个int整数的地址
int *p[3]也是一个数组,不过类型是int*,也就是一个int整数的地址,p[0]就是第一个元素而已
第2个回答  2017-06-24
意思正确,写法上错误:int a[2][3],*p[3];p[0]=&a[1][2];才正确。不知你问的什么意思。