#include<stdio.h>
int compare(int i, int j)
{
int count = 0;
int temp = i ^ j;
for (int k = 31; k >= 0; k–)
{
if ((temp >> k) & 1 == 1)
{
count++;
}
}
printf("%d\n", count);
}
int main()
{
compare(1999,2299);
system(“pause”);
return 0;
}
两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同? 输入例子: 1999 2299 输出例子:7
