如何在c++中对数组删除和追加值

How do you delete and append values to an array in c++?

本文关键字:删除 追加 数组 c++      更新时间:2023-10-16

我是c++的初学者,我想知道如何删除和附加值到数组。

我的意思是:

int arr[] = {1, 2, 3, 4}

我想把它变成:

int arr[] = {1, 2, 3}

通过删除数组的最后一个值。

,

我想知道如何将a值附加到数组的末尾。像这样:

int arr[] = {1, 2, 3, 4}

这:

int arr[] = {1, 2, 3, 4, 5}

有谁能帮帮我吗?

谢谢。

没有new/delete不行,但std::vector更好。下面是两者的一个例子。

#include <iostream>
#include <vector>
int main() {
    // With new/delete:
    int *array = new int[3];
    array[0] = 1;
    array[1] = 2;
    array[2] = 3;
    // `array` processing...
    int *array2 = new int[4];
    for (int i = 0; i < 3; i++) {
        // copy old data into new array (array2)
        array2[i] = array[i];
    }
    array2[3] = 4;
    delete []array;
    // `array2` processing...
    delete []array2;
    // With STL vector:
    std::vector<int> array3;
    array3.resize(3);
    array3[0] = 1;
    array3[1] = 2;
    array3[2] = 3;
    // `array3` processing...
    // Add any number of elements
    array3.push_back(4);
    // resized `array3` processing...
    return 0;
}