CodeQL 文档

比较意图赋值

ID: cpp/compare-where-assign-meant
Kind: problem
Security severity: 
Severity: error
Precision: high
Tags:
   - reliability
   - correctness
   - external/cwe/cwe-482
Query suites:
   - cpp-security-and-quality.qls

点击查看 CodeQL 仓库中的查询

此规则查找在赋值运算符 = 更合理的位置使用等式运算符 == 的情况。由于 === 运算符的相似性以及表达式作为顶级语句的有效性,这在 C 和 C++ 中是一个常见的错误。

此规则会标记在丢弃其结果的位置出现的每个等式运算符。

建议

检查以确保标记的表达式不是输入错误。如果确实打算丢弃等式测试的结果,则应将其显式转换为 void

示例

int x;
x == 4; // most likely = was intended. Otherwise this statement has no effect.
...

参考资料

  • ©GitHub, Inc.
  • 条款
  • 隐私