C语言问题 最下面这题、答案是C但我觉得C对D不对

C语言问题最下面这题、答案是C但我觉得C对D不对
2025-05-07 04:51:35
推荐回答(3个)
回答1:

a[3][4]是一个二维数组,可以看成a是一个具有4个元素的数组,

即a[0],a[1],a[2],a[3]都是数组。每个数组中有5个int型元素。
a是首元素的地址,即a[0]的地址,即&a[0], C选项中a+5指的是第六个数组的地址,*(a+5)就是取第六个元素的值,但a只有4个元素。
D选项中,*(a+1)为a的第二个元素,也就是a[1],a[1]中包含4个元素,(*(a+1)[1]) 就是a[1][1].

回答2:

(*(a+l)[l]),就像A一样,*(a+l)就是表示的a[l],指针就是这样的

回答3:

C对的啊,没见过D这样的表示