/* * print unsigned char (byte) in binary form */ #include void printbits_short_int(short int v) { int i; int *j = (int *) &v; int nbits = 8*sizeof(v); for(i = nbits-1; i >= 0; i--) { putchar('0' + (((*j) >> i) & 1)); } }