检查字符串中的所有字符是否为1,0或" "

时间:2015-02-08 21:47:19

标签: c++

我正在尝试创建一个布尔函数,如果字符串只包含1&0; s,0&s;和空格,则返回false。否则它返回true到函数调用嵌套的while循环。这是我到目前为止的代码:

bool check_bin_num(string& bin) {
     for (int i = 0; i <= back.length(); i++) {
          if (!(bin[i] == '0' || bin[i] == '1' || bin[i] == ' ')) {
               return true;
          }
     }
     return false;
}

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:6)

可以使用std::string::find_first_not_of

在一行中编写
s.find_first_not_of("01 ") == std::string::npos
当且仅当true std::string完全由字符s'0''1'(空格)组成时,

才会评估为' ' )。