21xrx.com
2024-12-22 21:51:11 Sunday
登录
文章检索 我的文章 写文章
C++去除字符串中的空格
2023-06-26 05:45:09 深夜i     --     --
C++ 字符串 去除 空格

C++是一门非常强大的编程语言,它提供了许多方法来操作和处理字符串。对于处理字符串中的空格而言,C++也提供了多种方法。在这篇文章中,我们将介绍一些常用的方法来去除字符串中的空格。

1. 使用循环和逻辑判断

我们可以使用循环来遍历字符串中的每一个字符,并使用逻辑判断来判断是否是空格字符,如果是空格字符则将其删除。下面是一个示例代码:


#include <iostream>

#include <string>

using namespace std;

int main()

{

  string str = " Hello, World!  ";

  string newStr = "";

  for(int i=0; i<str.length(); i++)

  {

    if(str[i] != ' ')

    {

      newStr += str[i];

    }

  }

  cout << "Old String: " << str << endl;

  cout << "New String: " << newStr << endl;

  return 0;

}

在上述代码中,我们首先定义了一个字符串变量`str`,其中包含了许多空格。我们创建了一个新的字符串变量`newStr`,并使用逐字符遍历的方式,将非空格字符追加到`newStr`字符串变量中。最后,我们输出了旧字符串和新字符串。

2. 使用C++ STL库

C++标准库提供了许多有用的函数来处理字符串。其中一个就是`std::remove_if()`,它可以将字符串中指定条件的字符删除。我们可以使用该函数来删除空格字符。下面是一个示例代码:


#include <iostream>

#include <string>

#include <algorithm>

using namespace std;

int main()

{

  string str = " Hello, World!  ";

  string newStr = "";

  remove_if(str.begin(), str.end(), [](char c) return c == ' '; );

  newStr = str;

  cout << "Old String: " << str << endl;

  cout << "New String: " << newStr << endl;

  return 0;

}

在上述代码中,我们使用了STL库中的`remove_if()`函数来删除字符串中的空格,然后将输出新字符串。值得注意的是,我们使用了lambda表达式来表示逻辑条件。

总结

在C++中去除字符串中的空格是非常容易的。我们可以使用循环和逻辑判断来逐个字符地处理字符串,也可以使用STL中提供的函数来进行处理。需要注意的是,STL函数比循环处理的方式更加简洁高效。

  
  

评论区

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