/* * print unsigned char (byte) in binary form */ #include void printbits_double(double v) { int i; long *j = (long *) &v; int n = 8*sizeof(v); for(i = n-1; i >= 0; i--) { if ( (i == 51) || (i == 62)) putchar(' '); putchar('0' + (((*j) >> i) & 1)); } } void printbits_float(float v) { int i; int *j = (int *) &v; int n = 8*sizeof(v); for(i = n-1; i >= 0; i--) { if ( (i == 22) || (i == 30)) putchar(' '); putchar('0' + (((*j) >> i) & 1)); } } void printbits_short_int(short int v) { int i; int *j = (int *) &v; int n = 8*sizeof(v); for(i = n-1; i >= 0; i--) { putchar('0' + (((*j) >> i) & 1)); } }