如何使用〜和|在c中进行按位ANDING

时间:2013-05-05 20:46:41

标签: c bit-manipulation bitwise-operators bitwise-and

我需要使用~|制作一个功能, 这样功能f(6, 5)将返回4作为答案。

4 个答案:

答案 0 :(得分:3)

根据De Morgan的定律,~(a | b)等于~a & ~b。根据同一法律,a & b等于~(~a | ~b)

答案 1 :(得分:1)

〜(〜A |〜B)

解读:

~a:

中为0的位

~b:b

中为0的位

~a | ~b:a或b

中为0的位

~~ a | ~b:a或b中不为0的位,即两者都为1

答案 2 :(得分:1)

int f(int a, int b)
{
    return ~(~a|~b);
}

De Morgan's Theorem

答案 3 :(得分:0)

查看

http://en.wikipedia.org/wiki/De_Morgan%27s_laws

因此以下行将帮助您使用否定和按位OR

进行添加

〜(~a | ~b)