a[][4]不应该是四列的二维数组吗,为什么定义的a有那么多列啊

如题,下面是图,难道是四列为一行,然后依次向下排列吗,就是{a b c d e f g h i}就是
a b c d
e f g h
i
这种吗

img

因为a没有指明行数,所以就看初始化的元素数量。这里是6个。而a数组指明了列数为4,所以a数组的行数必须为2,才能把元素都存储
因此a是两行四列,实际是
2 4 6 5
15 20 0 0

lz你的理解是对的
因为二维数组也是按顺序存储的,只是逻辑上分成行和列。所以lz只要按第一行排满后,换到第二行存储,依次类推即可