若定义a[][2]={1,2,3,4,5,6,7}; 则a数组中行的大小是?

2 3 4 还是无法确定?

定义的数组的行大小为4。根据数组第二维的字段值为2,所以每行最多有两个元素7/2=3……1,所以说数组的行大小为4。

通常在定义一维数组时必须指定数组的大小不然会报错。但是当我们在定义二维数组时第一维的的长度数值不是必须指定,但是第二维的长度一定不能够缺省,当我们不指定一维只指定二维,系统会可以根据数组元素的总个数和第二维的长度计算出一维的长度。

二维数组虽然在概念上是二维的,但是在二维数组的实际的存储过程中,在硬件存储器却是连续编址的,在存储器单元是按一维线性排列的。

扩展资料:

二维数组定义的一般形式为:类型说明符 数组名[ 常量表达式][ 常量表达式]。

类型说明符 数组名[常量表达式][常量表达式]。二维数组又称为矩阵,行列数相等的矩阵称为方阵。

二维数组的名字代表二维数组第0行的首地址(注意它是代表一行元素的首地址,而不是第0行第0列元素的首地址,虽然是相等的,但不能这么理解,所以在没有强制转换的情况下,二维数据要么通过行指针进行参数传递,要么通过二维指针进行参数传递)。

二维数组使用注意:

切不可将二维数组直接转换成二维指针作为形参传递,因为在这样子函数中不知道每一个一维元素含有多少个二维元素。

参数传递时将二维数组的强制转换为一维指针。

参考资料来源:百度百科-二维数组

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-03-11
i是行,j是列,不可以互换。
其实我没有太明白楼主的意思,不过数组在内存上是连续的。
比如a[3][4]在内存上的位置是a[0][0],a[0][1],a[0][2],a[0][3],a[1],[0]……a[2][3]
第2个回答  2010-06-30
是4行2列本回答被提问者采纳