x=x|(x+1);和x=x(x-1)?
2024-05-13 22:02:31
x=x|(x+1);和x=x&(x-1)?
例:如果x=2014,下面函数的返回值是()?
{
int n=0;
while((x+1))
{
n++;
x=x|(x+1);
}
return n;
}
答案:23
(1)x&(x-1)统计1的个数,x|(x+1)统计0的个数
(2)这个作用是对整型中0的个数进行统计,x=x|(x+1);的作用是每次循环把x的二进制中从右往左数的最后一位0变成1,直道变成全1的时候x+1就溢出为全0,循环结束。
2014的二进制是0000 0000 000 0000 0000 0111 1101 1110,所以结果是23
还有类似的题目,迭代式为x=x&(x-1),作用是统计x二进制中1的个数
最新文章
- 字符串函数用法 php,PHP字符串函数print()的用法
- Linux下利用rsync实现网站镜像同步
- C++ 设计People类-1
- centos7输入shell找不到命令_反弹shell原理与实现
- opencv对应python版本_【求问各位大佬python3.6怎么使用opencv,用哪个版本】python3 opencv...
- android jni 中jnienv,android JNI中JNIEnv類型和jobject類型的解釋
- 端口镜像 流量过滤_在 AWS 云环境中滥用 VPC 流量镜像抓取网络流量
- 明明白白你的Linux服务器——网络篇(2)
- Sqlserver2012 评估期已过解决问题
- Java自学之路(新手一定要看)
- 一个针对.net的好的建模工具 powerdesign 11
- FZU《C语言程序综合设计》
- win10的ios镜像
- 怎么网上兼职赚钱?盘点5个互联网赚钱的方法!
- C语言求两点之间的距离程序,C语言求空间两点之间的距离
- 【Unity 3D】简易小车游戏
- 构建一个代号为1的聊天应用程序4
- FM收音机入门,以及Python实现FM调制解调
- 进程、线程知识点总结和同步(消费者生产者,读者写者三类问题)、互斥、异步、并发、并行、死锁、活锁的总结
- 那么浙江大学软件工程专业复试考试内容有哪些