C语言。若有以下定义和语句,则对m数组元素地址的正确引用是

int m[ 2 ] [ 3 ] , (*p) [ 3 ]=m;A)p[2] B)p[0]+1 C)*(p+2) D)(p+1)+3解释一下ABCD??
2024-11-28 05:47:29
推荐回答(1个)
回答1:

a)p是指向一个int [3]类型的数组,(*p) [ 3 ]=m;后,拍相当于指向二维数组的第一行数组, p[2]相当于指向第三行数组
b)p[0]相当于指向第一行数组,p[0]+1相当于是m[0][1]元素的地址
c)*(p+2)是m[2][0]元素的地址,
d)p+1指向了第二行数组, (p+1)+3指向了第5行数组,但是没有这一行,越界了

有问题可以到易码农 http://www.ecoder.cn/这里提问,里面会有很多大牛给你解答!