例如:
在32位机器上25这个值包含下列各位:
00000000000000000000000000011001
翻转后:(2550136832)
代码
#include<stdio.h>
#include<stdlib.h>
unsigned int reverse_bit(unsigned int n)
{
int value = 0;
int i = 0;
for(i = 31; i>=0; i--)
{
if(n & 1)
{
value |= (1<<i);
}
n=(n>>1);
}
return value;
}
int main()
{
int n = 25;
printf("%u",reverse_bit(n));
system("pause");
return 0;
}