C 语言中书写二进制数的方法;

来源:互联网 发布:中国医疗知乎 编辑:程序博客网 时间:2024/05/16 05:07

 #define bin_val(n)     ( (((n>>0) & (1)) << 0) \
      | (((n>>3) & (1)) << 1) \
      | (((n>>6) & (1)) << 2) \
      | (((n>>9) & (1)) << 3) \
      | (((n>>12) & (1)) << 4) \
      | (((n>>15) & (1)) << 5) \
      | (((n>>18) & (1)) << 6) \
      | (((n>>21) & (1)) << 7) \
      | (((n>>24) & (1)) << 8) \
      | (((n>>27) & (1)) << 9) \
      | (((n>>30) & (1)) << 10) )
#define bin(n)    bin_val(0##n##)

 

 

 

usage:

  int   a = bin(101010);

 printf("a = 0X%X', a);  ==> 0X2A

原创粉丝点击