📌  相关文章
📜  popualte 一个数组 c++ (1)

📅  最后修改于: 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;
}
分析

使用裸指针填充数组可以动态分配数组大小,但需要手动释放内存,否则可能会发生内存泄漏。因此,这种方式在需要动态分配数组空间时使用,比如读取未知数量的数据。

使用 std::vector 填充数组

示例代码
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 最为方便,因为它可以动态分配数组大小,同时也不会发生内存泄漏问题。