【问题标题】:C - Comput Bitwise OR using only & and ~ [closed]C - 仅使用 & 和 ~ 计算按位或 [关闭]
【发布时间】:2012-10-01 03:02:50
【问题描述】:

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

   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

【问题讨论】:

  • 你在那些printfs中缺少%
  • 因为您忘记了 % 说明符,所以打印了普通字符。

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


【解决方案1】:

替换

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-11
    • 1970-01-01
    • 2012-04-16
    • 2015-11-27
    • 1970-01-01
    • 1970-01-01
    • 2016-08-29
    相关资源
    最近更新 更多