int main(void) { float f; char bits[32]; printf("pls input a float: "); scanf("%f", &f); float2bits(f, bits); print_float_bits(bits, 32); return 0; }
int main(int argc, char* argv[]){ union Float_bits f; f.f=-2.0; char sign; char mantissa[23]; uint32_t fraction; uint32_t exponent; fraction = f.bits; sign=get_sign_bit(f.bits); exponent=get_exponent(f.bits); for(int i=0;i<MANTISSA_WIDTH;i++) mantissa[i]=get_bit(fraction,i+9); //+9 to account for the starting bits of num (1 sign bit + 8 exponent bits) print_float_bits(sign,mantissa,exponent); return 0; }