房天下问答 >业主生活>其他> 问题详情

C语言 低4位全为1 什么意思?

设一个低4位全为1、其余全为0的数~(~0<<4) 这句话表示什么意思呢? ~(~0<<4) 怎么解释呢?? 新手 越通俗越好
wang9653|2011-02-09 22:06

其他答案

quan860214

这句话的执行顺序:~((~0)<<4) 0先取反,就变成了全是1的一个数,若当作signed int 打印出来就是-1。 全是1的一个数 左移4位后, 底四位补上0,高四位的1溢出。 然后再取反,就是一个只有低四位为1的数了,signed int打印出来应该是15 或者你用(unsigned int)-1 - 15, 和~(~0<<4)是一样的
2011-02-10 04:52
来自北京市

免责声明:问答内容均来源于互联网用户,房天下对其内容不负责任,如有版权或其他问题可以联系房天下进行删除。

关于我们网站合作联系我们招聘信息房天下家族网站地图意见反馈手机房天下开放平台服务声明加盟房天下
Copyright © 北京搜房科技发展有限公司
Beijing SouFun Science&Technology Development Co.,Ltd 版权所有
违法信息举报邮箱:jubao@fang.com
返回顶部
意见反馈