#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