1、数组是存放在连续内存空间上的相同类型数据的集合;
2、数组可以方便的通过下标索引的方式获取到下标下对应的数据;
3、数组下标都是从0开始的;
4、数组内存空间的地址是连续的;
5、因为数组的在内存空间的地址是连续的,所以我们在删除或者增添元素的时候,就难免要移动其他元素的地址,例如删除下标为3的元素,需要对下标为3的元素后面的所有元素都要做移动操作;
6、如果使用C++的话,要注意vector 和 array的区别,vector的底层实现是array,严格来讲vector是容器,不是数组;
7、数组的存储空间是连续的,数组的元素是不能删的,只能覆盖,遇到需要移除的元素就将它后面的所有元素向前移动一位;
8、C++二维数组在内存的空间地址是连续的,地址为16进制,可以看出二维数组地址是连续一条线的,0x7ffee4065820 与 0x7ffee4065824 差了一个4,就是4个字节,因为这是一个int型的数组,所以两个相邻数组元素地址差4个字节,0x7ffee4065828 与 0x7ffee406582c 也是差了4个字节,在16进制里8 + 4 = c,c就是12;
1 0x7ffee4065820 0x7ffee4065824 0x7ffee4065828 2 0x7ffee406582c 0x7ffee4065830 0x7ffee4065834
1 void test_arr() { 2 int array[2][3] = { 3 {0, 1, 2}, 4 {3, 4, 5} 5 }; 6 cout << &array[0][0] << " " << &array[0][1] << " " << &array[0][2] << endl; 7 cout << &array[1][0] << " " << &array[1][1] << " " << &array[1][2] << endl; 8 } 9 10 int main() { 11 test_arr(); 12 }
标签:下标,元素,内存空间,地址,数组,array From: https://www.cnblogs.com/LongYang-Ming/p/17512536.html