二维数组是从高地址向低地址申请了连续的 (行 * 列 * 每1个元素占用的字节) 个字节空间.
"二维数组的地址. 二维数组的地址==二维数组名==二维数组的第0行的地址==二维数组的第0行的第0个元素的地址 == 二维数组的低字节的地址.int arr[3][4];&arr ---> arr == arr[0] == &arr[0][0]
"二维数组行列计算-
1). 求二维数组的长度. 真正的元素的个数. sizeof(arr)/sizeof(arr[0][0]); 用二维数组占用的总的字节数 除以 每1个元素占用的字节数. 2). 求行数 二维数组的每1行占用的字节数是一样的. 所以. 用总的字节数 除以 每1行占用的字节数.就可以得到行数. int rows = sizeof(arr)/sizeof(arr[0]);
3). 求列数. 每1行的总字节数 除以 每1个元素的字节数. int cols = sizeof(arr[0]) / sizeof(int);
"二维数组与函数 写参数的时候,先写行数和列数,最后再写二维数组,然后二维数组的列数用参数指定.
|