C - 按位计算或仅使用&和〜

时间:2012-10-01 03:02:50

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

我正在尝试按位计算只使用&和〜。

   int main() {

   int num1 = 3;
   int num2 = 6;

   printf("%d\n",num1|num2); 

   num1 = ~num1;
   num2 = ~num2;

   printf("d\n",num1);
   printf("d\n",num2);

   int num3 = num1 & num2;    

   printf("%d\n",num3); 

}

这是输出:

7
d
d
-8

我想弄清楚为什么~num1正在输出d

1 个答案:

答案 0 :(得分:2)

替换

   printf("d\n",num1);
   printf("d\n",num2);

   printf("%d\n",num1);
   printf("%d\n",num2);