#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>>0)&0x01 \
)
#define Bin(n) (0x##n##L)
1. \的效果是指下行的内容是接着上行未完成的内容
2. ##的效果是衔接字符的效果 例如:0x##11110000##L 代替后0x11110000 将8个十进制数转换为十六进制,L表明长整型数32bits
3.uchar a;
a=Bin(10101010);// a=0xaa
即可以完成位操作,某些编译器不支持二进制直接操作,如0B10101010