[这似乎很奇怪,它不存在,所以如果它是重复的,请提前道歉]
我想测试 C 中的逻辑相等性。换句话说,我想知道如果两个值都以与逻辑表达式相关的正常方式转换,它们是否相等。
在C99中,我认为
(bool)a == (bool)b
给出我想要的。那是对的吗?用传统 C 语言编写此代码的正常方式是什么?
您通常会看到这样的情况:
if ((a == 0) == (b == 0))
Or
if (!!a == !!b)
Since !!a
如果 a 非零,则计算结果为 1,否则计算结果为 0。
希望这可以帮助!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)