编程实现:两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
#define _CRT_SECURE_NO_WARNINGS 1
#include
#include
int main()
{
int num1 = 1999;
int num2 = 2299;
int count = 0;
int ret = num1^num2; //比特位不同异或后结果为1
while (ret)
{
ret = ret&(ret - 1);
count++;
} //将异或后的1输出,即有几个比特位不同
printf("%d", count);
system("pause");
return 0;
}
创新互联服务项目包括彭水苗族土家族网站建设、彭水苗族土家族网站制作、彭水苗族土家族网页制作以及彭水苗族土家族网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,彭水苗族土家族网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到彭水苗族土家族省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
本文标题:编程实现:两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
当前地址:http://ybzwz.com/article/ipgjej.html