为什么选b,画线处什么意思

img

画线处什么意思,为什么选B啊哪位救我为什么啊数组和指针到底怎么用啊救命

p1是个指针,指向a[0],a是个二维数组,p1指向a[0]是其中一个维,所以p1指向的是一个一维数组
p2是个指针数组,有3个元素,它指向a的首地址
那么p2[0]就相当于a[0]
-=-=-=
那么再看选项,A和D比较好理解,a[1][1]和p2[1][1]是一回事,都是第1行第1列,不就是5吗
B也好理解,第0行第1列,明显是2
C难理解一些,p1[4]这在其他语言里已经越界了,但是c语言是基于指针的,越界了有时也能访问,数组是顺序表,地址连续,所以p1[4]和p2[1][1]的地址一样
-=-=-=-=
以下是二维数组里存的数据
1 2 3
4 5 ?
? ? ?
没有赋值的部分会是个随机数