我知道许多基本运算(例如加法或除法)也可以仅使用按位运算符在 C 中实现。如何使用大于或等号 (>=) 执行相同操作?
if (x >= 0) {
...
}
我能想出的最简单的解决方案:
#include <limits.h>
if ((x & INT_MAX) == x) // if (x >= 0)
...
如果你不喜欢==
然后使用 XOR 进行等于测试:
#include <limits.h>
if ((x & INT_MAX) ^ x) // if (x < 0)
...
else // else x >= 0
...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)