double | |
u2d (unsigned int u) | |
{ | |
return u; | |
} | |
double | |
i2d (signed int i) | |
{ | |
return i; | |
} | |
unsigned int | |
d2u (double d) | |
{ | |
return d; | |
} | |
signed int | |
d2i (double d) | |
{ | |
return d; | |
} | |
main () | |
{ | |
printf ("%lf, %lf, %lf\n", u2d (~0), u2d (1 << 31), u2d (1)); | |
printf ("%lf, %lf, %lf\n", i2d (~0), i2d (1 << 31), i2d (1)); | |
printf ("%u, %u, %u\n", d2u (u2d (~0)), d2u (u2d (1 << 31)), d2u (u2d (1))); | |
printf ("%d, %d, %d\n", d2i (i2d (~0)), d2i (i2d (1 << 31)), d2i (i2d (1))); | |
} |