21xrx.com
2024-12-22 22:41:26 Sunday
登录
文章检索 我的文章 写文章
如何在C++中编写去除字符串空格的函数
2023-07-05 13:33:01 深夜i     --     --
C++ 字符串 去除空格 函数

在C++中,常常需要对字符串进行一些处理,其中之一就是去除字符串中的空格。本文将介绍如何在C++中编写去除字符串空格的函数。

1. 使用string类

在C++中,可以使用string类来表示字符串。因此,我们可以使用string类提供的函数来去除空格。具体实现如下:


#include <string>

#include <algorithm>

std::string remove_spaces(std::string str) {

  str.erase(std::remove_if(str.begin(), str.end(), ::isspace), str.end());

  return str;

}

该函数使用了std::remove_if函数,该函数可以接受一个可调用对象f和一个区间[first, last),并删除该区间内所有满足f(x)的元素x。这里,我们使用isspace函数来判断是否为空格字符,并将该字符删除。

2. 使用字符数组

除了使用string类,我们也可以使用字符数组来处理字符串。具体实现如下:


#include <cstring>

#include <cctype>

char* remove_spaces(char* str) {

  char* p = str;

  char* q = str;

  while (*q) {

    if (!isspace(*q)) {

      *p++ = *q;

    }

    ++q;

  }

  *p = '\0';

  return str;

}

该函数使用了isspace函数来判断是否为空格字符,并将该字符删除。此外,该函数也使用了指针来遍历字符串。

总结

当我们需要对字符串进行处理时,可以使用string类或字符数组来实现。对于去除字符串空格这一操作,我们可以使用std::remove_if或isspace函数来判断并删除空格字符。

  
  

评论区

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