compl宏
概要:
#define compl ~
描述:
该宏是位运算符~(按位取反)的替代拼写方案。
compl a
就是将a各个位上的数字取反,即0变成1,1变成0。
范例:
|
|
输出:
-2
4294967294
整数是以补码形式存储的,整数1的存储形式为0000 0000 0000 0000 0000 0000 0000 0001。(compl 1)得到的数值存储形式为1111 1111 1111 1111 1111 1111 1111 1110。对于有符号整数,最高位是符号位,其余位是数值位,所以%d对应的值为-2。对于无符号整数,所有位都是数值位,所以%u对应的值为4294967294,即232-2。
相关内容:
bitand | 表示&的宏。 |
bitor | 表示|的宏。 |
xor | 表示^的宏。 |