如何在C中进行单比特按位逻辑运算

时间:2014-09-22 08:37:27

标签: c boolean-operations

基本上,我想在C中进行基本二进制布尔代数的单位按位逻辑运算。但似乎在C中,

unsigned int a = 0;
unsigned int c = ~a;

导致变量c爆炸。

我该怎么办?

编辑:我刚刚意识到〜问题是什么。我的意图是,基本上反转一个位。

1 个答案:

答案 0 :(得分:2)

$ cat pru.c

#include <stdio.h>
int
main()
{
    unsigned int a = 0;
    unsigned int b = 1;
    unsigned int c = a | b;

    printf("a = %u; b = %u; c = %u\n", a, b, c);
} /* main */

$ pru

a = 0; b = 1; c = 1