c++ - 为什么在将字符串标记与另一个字符串进行比较时会不断出现此错误?

标签 c++ string token tokenize

这个简单的函数旨在检查传递的字符串标记是否为运算符,如果它们返回 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/

相关文章:

c++ - 如何在 gtk+ 中创建图形

c - 在 C 中拆分字符串

php - Drupal 7 token 替换

c++ - 数组,removeFirst() 不工作?

c++ - 访问冲突 C++

java - 字符串格式为特定模式

c++ - token 桶的实现

node.js - 在身份验证 token 上签名需要哪些信息

c++ - 检测进程是否仍在运行

java - 在Java中递归反转字符串的最佳方法是什么?