微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何检测两个整数是否有相反的符号(位操作)?

让给定的整数是ab。 如果a的符号位与b的符号位不同,则ab的符号位 (MSB) 的 EX-OR 将为 1。 换句话说,如果ab的符号相反,ab的异或将是负数。

示例代码:

bool CheckOppositeSign(int a, int b)
{
    bool bRetValue = 0;
    bRetValue = ((a ^ b) < 0); // true if a and b have opposite signs
    return bRetValue;
}

注意:bool 存在于 C-C99 规范中。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐