代码很简单,看看就懂了,没什么好说的,就是一些位操作。
#include <stdio.h>
#define LongToBin(n) \
( \
((n >> 21) & 0x80) | \
((n >> 18) & 0x40) | \
((n >> 15) & 0x20) | \
((n >> 12) & 0x10) | \
((n >> 9) & 0x08) | \
((n >> 6) & 0x04) | \
((n >> 3) & 0x02) | \
((n ) & 0x01) \
)
#define Bin_to_Hex(n) LongToBin(0x##n##l)
int main(void)
{
unsigned int num ;
num = Bin_to_Hex(11111111);
printf("num:0x%x\n",num);
return 0 ;
}
输出结果:num:0xff