CodeQL 文档

相同操作数

ID: go/redundant-operation
Kind: problem
Security severity: 
Severity: warning
Precision: very-high
Tags:
   - correctness
   - external/cwe/cwe-480
   - external/cwe/cwe-561
Query suites:
   - go-security-and-quality.qls

点击查看 CodeQL 代码库中的查询

许多算术或逻辑运算符在应用于相同操作数时会产生微不足道的结果:例如,如果 x 是数字,则 x-x 为零,否则为 NaNx&x 始终等于 x。 这样的代码通常是拼写错误的结果,例如变量名拼写错误。

建议

仔细检查表达式,确保它不是错误的症状。

示例

在下面的示例中,函数 avg 旨在计算两个数字 xy 的平均值。 但是,程序员不小心两次使用了 x,因此该函数只返回 x

package main

func avg(x, y float64) float64 {
	return (x + x) / 2
}

可以通过更正拼写错误来解决此问题

package main

func avgGood(x, y float64) float64 {
	return (x + y) / 2
}
  • ©GitHub 公司
  • 条款
  • 隐私