阅读量:3
在C++中,可以使用数组的数组(array of arrays)来创建二维数组。
下面是创建二维数组的一种常见方法:
// 定义二维数组的行数和列数 const int rows = 3; const int cols = 4; // 创建二维数组 int arr[rows][cols];
这样就创建了一个大小为3行4列的二维数组arr
。可以通过arr[row][col]
来访问特定位置的元素,其中row
是行索引(从0开始),col
是列索引(从0开始)。
可以使用循环来遍历和操作二维数组的元素:
for (int i = 0; i < rows; i++) { for (int j = 0; j < cols; j++) { // 访问二维数组的元素 arr[i][j] = i + j; } }
注意,这种方法创建的二维数组是在栈上分配内存的,因此其大小在编译时必须是已知的。如果需要在运行时动态创建二维数组,可以使用指针和new
运算符:
// 动态创建二维数组 int** arr = new int*[rows]; for (int i = 0; i < rows; i++) { arr[i] = new int[cols]; } // 访问和操作二维数组的元素 arr[0][0] = 1; arr[1][2] = 3; // 释放二维数组的内存 for (int i = 0; i < rows; i++) { delete[] arr[i]; } delete[] arr;
注意,动态创建的二维数组需要手动释放内存,以避免内存泄漏。首先使用delete[]
释放每一行的内存,然后再使用delete[]
释放指向行指针的内存。