📅  最后修改于: 2023-12-03 14:45:33.620000             🧑  作者: Mango
在C++中,可以使用 std::vector
或裸指针定义一个数组,并通过 for
循环等方式进行填充。本文将介绍三种填充数组的方法,分别是:
std::vector
填充数组// 初始化数组并填充
int a[] = {1, 2, 3, 4, 5};
// 输出数组元素
for (int i = 0; i < 5; ++i) {
std::cout << a[i] << " ";
}
使用这种方式需要在定义数组时就明确知道数组的元素,因此适合于静态数组。
int main() {
int len = 5;
// 使用裸指针定义动态数组
int* b = new int[len];
// 填充数组
for (int i = 0; i < len; ++i) {
b[i] = i + 1;
}
// 输出数组元素
for (int i = 0; i < len; ++i) {
std::cout << b[i] << " ";
}
// 释放内存
delete[] b;
return 0;
}
使用裸指针填充数组可以动态分配数组大小,但需要手动释放内存,否则可能会发生内存泄漏。因此,这种方式在需要动态分配数组空间时使用,比如读取未知数量的数据。
int main() {
int len = 5;
// 使用 std::vector 定义动态数组并填充
std::vector<int> c(len, 0);
for (int i = 0; i < len; ++i) {
c[i] = i + 1;
}
// 输出数组元素
for (int i = 0; i < len; ++i) {
std::cout << c[i] << " ";
}
return 0;
}
使用 std::vector
填充数组可以动态分配数组大小,同时不需要手动释放内存,因为 std::vector
会自动进行内存管理。因此,这种方式也适用于需要动态分配数组空间的情况。
本文介绍了三种填充数组的方式:初始化数组并填充、使用裸指针填充数组以及使用 std::vector
填充数组。其中,初始化数组适用于静态数组,而使用裸指针和 std::vector
分别适用于动态数组的情况。其中,使用 std::vector
最为方便,因为它可以动态分配数组大小,同时也不会发生内存泄漏问题。