c语言的题 int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};若数组a首地址为500,则a[1]+3的值为什么?

int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};若数组a首地址为500,则a[1]+3的值为什么?
此题答案是514,但是我不知道为什么,求解释!
此题答案是514,但是我不知道为什么,求解释!

答案A.
数组定义是a[0]=1,a[1]=2,a[2]=3, ...,a[9]=10
A. p += 2使p指向a[2], *(p++)表示先取*p的值, 然后p增加1(指向a[3]), 所以取得的值是a[2]=3
B. p += 2使p指向a[2], *++p表示先p增加1(指向a[3]),然后取*p的值,所以是a[3]=4
C. p += 3使p指向a[3], *p++表示先取*p的值, 然后p增加1(指向a[4]), 所以取得的值是a[3]=4
D. p += 2使p指向a[2], ++*p对*p的值增加1, 所以取得的值是a[2]=a[2]+1=4

还有一种写法是(*p)++, 表示先取*p的值, 这个值再增加1追问

我看不明白,p是什么,而且a是二维数组啊

温馨提示:答案为网友推荐,仅供参考
相似回答