C++ 多维数组
在c++中,经常用指针表示一个数组,多维数组则是数组的数组,对于二维数组来说,就像是一个数组里面包含了很多数组的指针,而这些指针又分别对应着一个数组,这样也会使得数组的内存变得不连续,遍历这个数组会花费相比较相同元素个数更多的时间所以应该避免使用多维数组。
如下所示,创建了一个二维数组,为里面的一维数组的指针创建了空间,再通过遍历,为每个一维数组的指针赋上了一个10个int大小的指针,这个内存用于存放int。
int** a2d = new int*[10];
for(int i = 0; i < 10; ++i){
a2d[i] = new int[10];
}
数组的第一个维度表示的是指针
a2d[i]
数组的第二个维度表示的是具体的int类型的数值
a2d[i][i]