如何动态分配二维数组并赋初值
时间: 2024-04-29 18:26:28 浏览: 99
C++二维数组的动态分配
5星 · 资源好评率100%
您好,针对您的问题,可以使用以下代码来动态分配二维数组并赋初值:
```
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 j = 0; j < cols; ++j) {
arr[i][j] = i * cols + j;
}
}
// 打印二维数组
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
cout << arr[i][j] << " ";
}
cout << endl;
}
// 释放内存
for (int i = 0; i < rows; ++i) {
delete[] arr[i];
}
delete[] arr;
```
以上代码中,首先定义了二维数组的行数和列数,然后使用 `new` 运算符动态分配了一个指针数组来存储每一行的首地址。接着使用双重循环对每个元素进行赋值操作。最后,打印出二维数组中的所有元素,并释放相关内存。
阅读全文