二维数组int[][] arr={{1,2},{34}},它的下标形式是?
展开全部
一、代码错误,数组要写int arr[*][*]。
二、二维数组第二维不能省略(涉及跨度),一维省略按初值最大列数来算,比如你题目中就是一维大小就是2。
三、你上面的初值是不完整赋值,第一行是两个数1,2。第二行是一个数34。所以第二行缺的取默认值0。所以arr[0][0],arr[0][1],arr[1][0],arr[1][1]分别对应1,2,34,0。
四、二维数组行列只是给人看的。对计算机而言在内存中都是一维数组,地址arr[0][0],arr[0][1],arr[1][0],arr[1][1]这样顺序连续的。所以你上面的赋值也可写成:int arr[][2]={1,2,34};同样按顺序赋初值,缺省补0(虽然这样写会有编译器警告,但通过初值内容及二维大小一样可赋值),这也正说明了二维大小不能省略的原因。
二、二维数组第二维不能省略(涉及跨度),一维省略按初值最大列数来算,比如你题目中就是一维大小就是2。
三、你上面的初值是不完整赋值,第一行是两个数1,2。第二行是一个数34。所以第二行缺的取默认值0。所以arr[0][0],arr[0][1],arr[1][0],arr[1][1]分别对应1,2,34,0。
四、二维数组行列只是给人看的。对计算机而言在内存中都是一维数组,地址arr[0][0],arr[0][1],arr[1][0],arr[1][1]这样顺序连续的。所以你上面的赋值也可写成:int arr[][2]={1,2,34};同样按顺序赋初值,缺省补0(虽然这样写会有编译器警告,但通过初值内容及二维大小一样可赋值),这也正说明了二维大小不能省略的原因。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询