【发布时间】:2015-03-11 21:16:57
【问题描述】:
上个月我遇到了一系列错误,原因是在 C 中输入错误的“&”而不是“&&”。
我最新的一个很简单 - 即我写了
value = data && 0x0123
很明显,在我中断后看到值是 0 或 1,但我想要一种方法来更早地捕捉到这个,类似于编码
if (1 == END) ...
发现滥用= 和==。
有什么想法吗?
【问题讨论】:
-
只写好代码?!很简单
-
由于您标记了 C++:在 C++ 中,您可以使用
and和bitand而不是&&和&。 See here -
不能说我曾经遇到过这个问题。
-
@LightnessRacesinOrbit 是对的。除非您不知道
&和&&之间的区别并且现在您发现并且不想在您的代码中搜索此类问题,否则犯此错误是没有意义的,我建议您使用 grep搜索所有可能出现的&和&&并修复每一个。