小编Gi5*_*Gi5的帖子

-D name = definition和bitwise运算符

我试图了解下一次计算是如何执行的.

例如,如果这是我的终端命令

gcc ex2.c -D b+=2
Run Code Online (Sandbox Code Playgroud)

为什么我得到5?

#include <stdio.h>

int main() 
{
#ifdef b
    printf("%d\n", 2 b | ~ 2 b);
#endif
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

2 b表示2*b?

~2 b意味着2*b然后〜?

c gcc bitwise-operators bitflags

1
推荐指数
1
解决办法
58
查看次数

标签 统计

bitflags ×1

bitwise-operators ×1

c ×1

gcc ×1