A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© hugin 中级黑马   /  2016-9-20 16:27  /  1296 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文



二维数组是从高地址向低地址申请了连续的 (行 * 列 * 每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);


"二维数组与函数
写参数的时候,先写行数和列数,最后再写二维数组,然后二维数组的列数用参数指定.



1 个回复

倒序浏览
感谢分享`!赞一个!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马