二维数组int a[3][4]={{1,2,3,4},{5,6,7,8},{9,0,1,2}};里

二维数组int a[3][4]={{1,2,3,4},{5,6,7,8},{9,0,1,2}};里面的数值怎么排列的?c语言

按行排列的,先排列第二维的,然后在排列第一维。二维数组实际的存储还是转换为一维数组来实现的。每个a[i][j]实际对应a[i*M+j],M是第二维的长度。追问

那么int a [3][4] ={{1},{5},{9}};是怎么回事

追答

没有填的地方默认会用用0补齐,a[3][4]实际就是这样{{1,0,0,0},{5,0,0,0},{9,0,0,0}}。所以对于二维数组的定义,第二维长度必须是确定的,比如int a[][4],而int a[][]这样是不允许的。

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