这个简单的函数旨在检查传递的字符串标记是否为运算符,如果它们返回 true。
bool isOp(std::string tokens){
for (int i = 0; i < tokens.size(); i++) {
if (tokens[i] == "+" || tokens[i] == "-" || tokens[i] == "*" || tokens[i] == "/"){
return true;
}
}
}
但是它不会编译,我得到一个意想不到的错误,说“ISO C++ 禁止比较指针和整数 [-fpermissive]”,我不明白的是我没有将指针与整数进行比较,我正在将一个字符串与一个字符串进行比较?那么,为什么会出现此错误,我该如何解决?
最佳答案
您正在尝试比较单个字符,而不是字符串。将所有 "
替换为 '
以使它们成为字符常量而不是字符串文字。
关于c++ - 为什么在将字符串标记与另一个字符串进行比较时会不断出现此错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43883662/