21xrx.com
2025-03-27 20:47:19 Thursday
文章检索 我的文章 写文章
C++如何删除字符串中的最后一个字符
2023-06-25 19:02:54 深夜i     20     0
C++ 删除 字符串 最后一个字符

在C++中,删除字符串中的最后一个字符可以通过以下两种方式实现。

第一种方法:使用字符串函数

在C++中,有一个名为`string::pop_back()`的字符串函数,它用于删除字符串的最后一个字符。这个函数可以直接将字符串的最后一个字符从内存中删除。

下面是使用`pop_back()`函数删除字符串的最后一个字符的代码示例:

c++
#include <iostream>
#include <string>
using namespace std;
int main() {
  string str = "hello world";
  cout << "Original string: " << str << endl;
  // 使用pop_back()函数删除字符串的最后一个字符
  str.pop_back();
  cout << "Updated string: " << str << endl;
  return 0;
}

输出:

Original string: hello world
Updated string: hello worl

第二种方法:使用字符数组

另一种方法是将字符串转换为字符数组,通过减少数组大小来删除最后一个字符。这个方法需要比较多的代码,但对于初学者可能更易于理解。

下面是使用字符数组删除字符串的最后一个字符的代码示例:

c++
#include <iostream>
#include <cstring>
using namespace std;
int main() {
  char str[] = "hello world";
  cout << "Original string: " << str << endl;
  // 计算字符串长度
  int len = strlen(str);
  // 删除最后一个字符
  str[len - 1] = '\0';
  cout << "Updated string: " << str << endl;
  return 0;
}

输出:

Original string: hello world
Updated string: hello worl

结论

C++可以通过使用字符串函数、字符数组的方式实现删除字符串的最后一个字符。建议初学者使用字符串函数的方法,因为它更为简单和直观。对于熟悉字符数组的人来说,也可以使用字符数组的方式。无论使用哪种方法,都需要小心不要破坏原始字符串的地址或长度。

  
  

评论区

请求出错了