21xrx.com
2025-07-07 02:59:31 Monday
文章检索 我的文章 写文章
C++如何在数组中删除一个数?
2023-07-04 23:21:49 深夜i     45     0
C++ 数组 删除 数值

在C++中,我们可以使用以下方法来删除数组中的一个元素:

1. 首先,我们需要将需要被删除的元素的下标记录下来,记为index。

2. 然后,我们从index位置开始,将数组中后面的元素一一向前移动一个位置,覆盖掉当前位置的元素。这个操作可以使用for循环轻松实现。

3. 最后,我们可以调用resize()函数将数组大小减1,从而删除最后一个元素,因为在第二步中已经有一个元素被移动到了index位置。

下面是一个示例代码,展示了如何使用上述步骤在数组中删除指定元素:

#include <iostream>
#include <vector>
using namespace std;
int main() {
  vector<int> myArr = 5;
  // 删除下标为2的元素
  int index = 2;
  // 将从index开始后面的元素向前移动一个位置
  for (int i = index; i < myArr.size() - 1; i++) {
    myArr[i] = myArr[i + 1];
  }
  // 删除最后一个元素
  myArr.resize(myArr.size() - 1);
  // 打印删除后的数组
  for (int i = 0; i < myArr.size(); i++) {
    cout << myArr[i] << " ";
  }
  return 0;
}

输出结果为:1 2 4 5

这里我们使用了vector来演示,但是同样的方法也适用于使用数组进行操作。值得注意的是,这个方法仅适用于原始的数组,对于使用动态内存分配的数组,删除元素时需要使用特定的函数进行处理。

  
  

评论区