黑马程序员技术交流社区
标题: 二维数组存储 [打印本页]
作者: 手残程序员 时间: 2015-7-29 21:58
标题: 二维数组存储
存储方式:
1)计算机会给二维数组分配一块连续的存储空间
2)数组名代表数组的首地址,从首地址位置,依次存入第1行、第2行、.....
3)每一行存储方式,从行首地址还是,依次存储行的第1个元素、第2个元素、第3个元素......
4)每个元素占用相同的字节数(取决于数组类型)
5)并且数组中元素之间的地址是连续。
arr == &arr[0] == arr[0] == &arr[0][0]
arr (数组名 指向第一行元素的地址)
&arr[0](第一行元素的地址)
arr[0](指向第一行第一个元素的地址)
&arr[0][0](第一个元素的地址)
int arr[3][4] = {{第一行3个元素(第一行一维数组)}, ----> arr[0]
{第二行4个元素(第二行一维数组)}, ----> arr[1]
{第三行4个元素(第三行一维数组)}}; ----> arr[2]
arr是一个二维数组
总计占用字节数: sizeof(arr);
每行占用字节数: sizeof(arr[0]);
行数: 总字节数/每行字节数 --> sizeof(arr)/sizeof(arr[0]);
列数: 行数/每个类型 --> sizeof(arr[0])/sizeof(int)
| 欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |