C语言题目求详细解答 表达式~0x13的值是 A.0xFFEC B.0xFF71 C.0xFF68 D.0xFF17

最好顺便解答一下“~”按位取反运算符到底怎么用 谢谢!
2025-02-25 00:24:50
推荐回答(4个)
回答1:

0x是16进制的数字
0x13换算成二进制数是:10011
把10011补齐是:0000 0000 0001 0011
然后按位取反是:1111 1111 1110 1100(呵呵,按位取反就是同一位上的0变1,1变0)
换算成16进制: F F E C
所以:选择 A

回答2:

~ 就是将 1变为0,0变为1
0x表示十六进制
0x13 也就是 0x0013
0 0 1 3 对应的二进制
0000 0000 0001 0011
全部取反
1111 1111 1110 1100
也就是
F F E C

答案是 a

回答3:

0x13=0000 0000 0001 0011B
~0x13=1111 1111 1110 1100B=0xFFEC
因此选A
按位取反运算符就是把每一个二进制位取反!

回答4:

0x13=0000 0000 0001 0011;
取反后 1111 1111 1110 1100;
=0xec;
取反,0变1,1变0.用多了就会了。