使用C++创建二维数组/矩阵的方法有很多种,下面是其中两种常见的方法:
int rows = 3; // 矩阵的行数
int cols = 4; // 矩阵的列数
int** matrix = new int*[rows]; // 创建指向行的指针数组
for (int i = 0; i < rows; ++i) {
matrix[i] = new int[cols]; // 创建每一行的列数组
}
// 对矩阵进行赋值
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
matrix[i][j] = i * cols + j; // 根据索引计算元素的值
}
}
// 使用矩阵
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
cout << matrix[i][j] << " "; // 输出矩阵的元素值
}
cout << endl;
}
// 释放内存
for (int i = 0; i < rows; ++i) {
delete[] matrix[i]; // 释放每一行的列数组
}
delete[] matrix; // 释放行的指针数组
#include <vector>
int rows = 3; // 矩阵的行数
int cols = 4; // 矩阵的列数
vector<vector<int>> matrix(rows, vector<int>(cols)); // 创建大小为rows x cols的二维vector
// 对矩阵进行赋值
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
matrix[i][j] = i * cols + j; // 根据索引计算元素的值
}
}
// 使用矩阵
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
cout << matrix[i][j] << " "; // 输出矩阵的元素值
}
cout << endl;
}
以上两种方法都可以用来创建二维数组/矩阵,并进行赋值和访问操作。使用数组指针需要手动释放内存,而使用vector容器则不需要手动释放内存。具体选择哪种方法取决于实际需求和个人偏好。
相关产品推荐:
领取专属 10元无门槛券
手把手带您无忧上云