21xrx.com
2024-09-20 00:53:27 Friday
登录
文章检索 我的文章 写文章
C++:判断输入字符串是否全为空格
2023-07-06 11:02:00 深夜i     --     --
C++ 判断 输入字符串 全为空格

在C++中,我们经常需要判断用户输入的字符串是否为空。但是,有时候用户输入的字符串并不是空字符串(即长度为0的字符串),而是仅包含空格的字符串。这时候,如果我们将其视为空字符串,就会影响程序的正确性。因此,在判断一个字符串是否为空时,我们需要判断其是否全为空格。

判断一个字符串是否全为空格的方法有很多种。下面我们介绍两种常用的方法。

方法一:使用循环遍历字符串中的每个字符,判断其是否为空格。若字符串中存在非空格的字符,则该字符串不全为空格。

代码如下:


bool isAllSpaces(string str)

{

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

  {

    if (str[i] != ' ')

    

      return false;

    

  }

  return true;

}

该函数接收一个字符串作为参数,返回一个布尔值,表示该字符串是否全为空格。

方法二:使用STL库函数count_if和isspace。isspace是一个判断字符是否为空格的函数。count_if是STL中的算法函数,用于计算满足某种条件的元素个数。我们可以通过将字符串中的每个字符作为第一个参数,将isspace作为第二个参数来计算字符串中空格的个数。如果空格的个数等于字符串的长度,则该字符串全为空格。

代码如下:


bool isAllSpaces(string str)

{

  return count_if(str.begin(), str.end(), [](unsigned char c){return !isspace(c);}) == 0;

}

该函数接收一个字符串作为参数,返回一个布尔值,表示该字符串是否全为空格。

总之,在判断一个字符串是否为空时,我们需要注意字符串中是否存在空格。如果字符串仅包含空格,则判断其为非空字符串是不准确的。因此,要使用上述两种方法之一来判断一个字符串是否全为空格。

  
  

评论区

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