C++二维数组的初始化赋值及示例
作者:野牛程序员:2023-07-22 12:12:54 C++阅读 3476
在C++中,可以使用多种方法来初始化和赋值二维数组。以下是几种常见的示例:
静态初始化:
静态初始化适用于已知数组元素的情况,可以在声明数组时直接赋值。
#include <iostream>
int main() {
// 定义一个3行4列的二维数组并进行静态初始化
int twoDArray[3][4] = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
};
// 遍历并打印二维数组
for (int i = 0; i < 3; ++i) {
for (int j = 0; j < 4; ++j) {
std::cout << twoDArray[i][j] << " ";
}
std::cout << std::endl;
}
return 0;
}动态初始化:
动态初始化适用于在运行时确定数组元素的值,这要求使用双重循环为每个元素赋值。
#include <iostream>
int main() {
// 定义一个3行4列的二维数组并进行动态初始化
int rows = 3;
int cols = 4;
int** twoDArray = new int*[rows];
for (int i = 0; i < rows; ++i) {
twoDArray[i] = new int[cols];
for (int j = 0; j < cols; ++j) {
twoDArray[i][j] = i * cols + j + 1;
}
}
// 遍历并打印二维数组
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
std::cout << twoDArray[i][j] << " ";
}
std::cout << std::endl;
}
// 释放动态分配的内存
for (int i = 0; i < rows; ++i) {
delete[] twoDArray[i];
}
delete[] twoDArray;
return 0;
}使用std::vector:
C++标准库中的std::vector提供了更方便和安全的二维数组初始化和管理。
#include <iostream>
#include <vector>
int main() {
// 定义一个3行4列的二维数组并进行初始化
std::vector<std::vector<int>> twoDArray = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
};
// 遍历并打印二维数组
for (int i = 0; i < twoDArray.size(); ++i) {
for (int j = 0; j < twoDArray[i].size(); ++j) {
std::cout << twoDArray[i][j] << " ";
}
std::cout << std::endl;
}
return 0;
}使用std::vector时,无需担心内存管理,因为它会在需要时自动释放内存。
以上是三种常见的初始化和赋值二维数组的方法。可以根据具体的需求选择合适的方法。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

- 上一篇:c++创建二维数组
- 下一篇:c++二维数组输出格式
