猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
关于c语言s=!!(x>>16)位运算什么意思?
这时候默认是x是32位数
解析说是判断x的最高位是否在高16位上,是什么意思呢?
潇潇雨雨
浏览 1363
回答 1
1回答
炎炎设计
解析得对啊!把x右移16位,那么x的“高16位”就移到“低16位”上了。这时若x不为0,则!x就是0,!!x就是1。所以s=!!(x>>16);后若x的“高16位”中有1则结果为1,否则为0,这就判断了x的最高位是否在高16位上了。不过这题说的“最高位”显然是指1,难道0就不能做最高位?0和正整数的最高位不都是0吗?不知出题人的意图是啥——当然这是题外话。
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
C++
typedef入门问题
1 回答
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续