21xrx.com
2024-12-27 21:25:18 Friday
登录
文章检索 我的文章 写文章
如何在C++中删除数组末尾元素
2023-07-05 12:16:59 深夜i     --     --
C++ 删除 数组 末尾 元素

在C++中,删除数组末尾元素是一种常见的操作。但是,由于C++语言并没有内置的数组删除函数,因此需要使用其他技巧来实现这个任务。

有两种常用的方法可以实现数组的删除:使用动态数组或使用指针。

使用动态数组

动态数组是一种可动态调整大小的数组。可以使用C++中的向量(vector)来实现动态数组,vector提供了一个pop_back函数,可以轻松删除数组的末尾元素。

具体实现如下:


#include<iostream>

#include<vector>

using namespace std;

int main()

{

  vector<int> arr; // 创建一个vector数组

  // 向数组中添加元素

  arr.push_back(1);

  arr.push_back(2);

  arr.push_back(3);

  arr.push_back(4);

  arr.push_back(5);

  cout << "Before deleting the last element" << endl;

  for(int i=0;i<arr.size();i++)

   cout << "arr[" << i << "]: " << arr[i] << endl;

  // 删除数组的末尾元素

  arr.pop_back();

  cout << "After deleting the last element" << endl;

  for(int i=0;i<arr.size();i++)

   cout << "arr[" << i << "]: " << arr[i] << endl;

  return 0;

}

在这个示例中,首先创建一个vector数组,然后使用push_back函数向其中添加5个元素。然后,使用pop_back函数删除了数组的末尾元素。最后,使用一个循环遍历vector数组并输出其元素。

使用指针

指针是C++中一种非常强大的数据类型,它可以指向数组中的单个元素。使用指针可以简单地删除数组的末尾元素。

具体实现如下:


#include<iostream>

using namespace std;

int main()

{

  int arr[5] = 2; // 创建一个数组

  int *ptr = arr + 4; // 创建一个指向最后一个元素的指针

  cout << "Before deleting the last element" << endl;

  for(int i=0;i<5;i++)

   cout << "arr[" << i << "]: " << arr[i] << endl;

  // 删除数组的末尾元素

  *ptr = NULL;

  cout << "After deleting the last element" << endl;

  for(int i=0;i<5;i++)

   if(arr[i]!=NULL)

     cout << "arr[" << i << "]: " << arr[i] << endl;

  return 0;

}

在这个示例中,首先创建一个大小为5的整数数组,数组中包含5个元素。然后,使用指针将指向最后一个元素。接下来,通过设置指向的元素为NULL来删除数组的末尾元素。最后,使用一个循环输出数组中的元素。

总结

在C++中,要删除数组的末尾元素,可以使用动态数组或指针。使用动态数组时,可以使用vector提供的pop_back函数。使用指针时,可以使用指针将指向数组中的最后一个元素,并通过将其设置为NULL来删除数组的末尾元素。

  
  
下一篇: Java编写PDF文件

评论区

{{item['qq_nickname']}}
()
回复
回复