删除数组中的某个元素C++
时间: 2023-07-05 12:27:45 浏览: 696
在 C++ 中,可以使用 vector 容器来实现删除数组中的某个元素。具体步骤如下:
1. 使用 vector 容器创建一个数组,并向其中添加元素。
```c++
vector<int> arr = {1, 2, 3, 4, 5};
```
2. 使用 erase() 函数删除指定元素,传入要删除的元素的迭代器作为参数。
```c++
arr.erase(arr.begin() + 2); // 删除第三个元素,即数字 3
```
3. 可以使用 for 循环遍历 vector 容器,输出删除元素后的数组。
```c++
for (int i = 0; i < arr.size(); i++) {
cout << arr[i] << " ";
}
```
完整代码如下:
```c++
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> arr = {1, 2, 3, 4, 5};
arr.erase(arr.begin() + 2); // 删除第三个元素,即数字 3
for (int i = 0; i < arr.size(); i++) {
cout << arr[i] << " ";
}
return 0;
}
```
输出结果为:1 2 4 5
相关问题
删除字符串数组中的某个元素c++
在 C++ 中,可以使用 std::vector 来代替数组,因为它具有更方便的操作方式。如果你一定要使用数组,可以将要删除的元素之后的所有元素向前移动一个位置,并将数组的大小减1,例如:
```c++
#include <iostream>
using namespace std;
void deleteElement(int arr[], int& size, int index) {
for (int i = index; i < size - 1; i++) {
arr[i] = arr[i + 1];
}
size--;
}
int main() {
int arr[] = {1, 2, 3, 4, 5};
int size = 5;
int index = 2; // 要删除的元素下标为2,即数字3
deleteElement(arr, size, index);
for (int i = 0; i < size; i++) {
cout << arr[i] << " ";
}
return 0;
}
```
输出结果为:1 2 4 5。
c++删除数组中的某个元素
在 C++ 中,数组的大小是固定的,无法直接删除元素。但是可以通过移动元素的方式模拟删除元素的效果。
假设有一个数组 `arr`,需要删除下标为 `index` 的元素,可以将下标从 `index+1` 到数组结尾的元素全部向前移动一位,然后将数组大小减1,代码示例如下:
```c++
// 假设数组 arr 有 n 个元素,需要删除下标为 index 的元素
for (int i = index + 1; i < n; i++) {
arr[i-1] = arr[i];
}
n--; // 数组大小减1
```
注意要保证数组下标不越界,并且这种方法只适用于元素类型是基本类型或者可以赋值的自定义类型,对于包含指针等引用类型的数组需要特别处理。