永发信息网

c语言 if(!(a&0x10))是什么意思?

答案:4  悬赏:20  手机版
解决时间 2021-11-29 05:00
c语言 if(!(a&0x10))是什么意思?
最佳答案
0x10是十六进制数 转换成十进制是 16

a是一个变量。
和0x10 按位与 运算。

然后取逻辑非。

然后用if判断。追问是不是只有a为0时 这个if条件才取真?追答不是。 你没明白 按位与 这个操作是怎么回事。

00000000
00010010
比如这两个数按位与
每一位,相同为1 不同为0
结果就是 11101101
结果就是一个非0的数
取逻辑非。结果为0 if就为假
如果a是11101101那么和 00010010按位与。结果就是00000000
去逻辑非。结果是1 if为真。。

所以只有a是 11101101的时候 if才为真
全部回答
引用regret4hxp2的回答:
0x10是十六进制数 转换成十进制是 16

a是一个变量。
和0x10 按位与 运算。

然后取逻辑非。

然后用if判断。说错了吧。。。
0x10的2进制表示是 0001 0000,当a与其进行按为与运算为0是if条件为真,也就是 a的值的二进制表示的第5为要为0,例如a = 4,4的2进制表示为0000 0100,就满足这个条件。
a&0x10是a与0x10(也就是16)按位取与,
(!(a&0x10))
如果a的第4位(二进制表示)是1,则返回0,否则返回1,即判断a的第4位是否为0.
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
酷比h9微信怎么分屏!求帮助
西安一高校号召师生为校庆捐款是什么情况?
新华区平顶山六家物业家政地址在什么地方,想
82*73+20*73-2*73用简算
耐冬和冬青是不是同种植物?
求《艺用人体解剖学》萨拉.西蒙拉尔特PDF
科目一首次预约要钱吗
正在填写英文学历表格,不知道这些是什么意思
已知X-2y=3,求1/2X²-2Xy+2y²
从06年看书以来看过不少小说,知道不少大神,
二十岁了要怎么长高丶
不是211大学的学生也可以被德国一流大学录取
产茶大省有哪些
金泰研和金夏研谁更漂亮
在某市中学生的社会实践活动中,就中学生与父
推荐资讯
猫咪犯错后如何调教才合适
又尝同席尝的意思
鱼儿 什么样的鱼儿填空一样的两个字
别克英朗GT今天刚装好导航。后来就发现转向时
做徽商怎样加好友
黄石公相关的成语
寄印刷品怎么算运费的?
38岁的人了,从头开始拼搏可以吗。
税融通有哪些优势呢?
请大神帮我查一下刚买的苹果6sp是不是翻新机
没票怎么上火车
济南宏力太阳能热水器hls100lcb多少钱
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?