在 C++ 中初始化二维数组的大小有两种方法:静态初始化和动态初始化。
int arr[3][4] = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
};
在静态初始化时,需要提前知道数组的大小,并且直接在初始化时给出具体的数值。
int rows = 3;
int cols = 4;
int **arr = new int*[rows];
for (int i = 0; i < rows; i++) {
arr[i] = new int[cols];
}
// 初始化数组
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
arr[i][j] = i * cols + j + 1;
}
}
// 使用后需要释放内存
for (int i = 0; i < rows; i++) {
delete[] arr[i];
}
delete[] arr;
动态初始化可以在运行时确定数组的大小,通过动态分配内存来实现。需要注意的是,在使用完毕后需要手动释放内存,以避免内存泄漏。