double frexp(double x, int *exp);
frexp breaks a floating-point number into a normalized fraction and an integral power of 2.
frexp stores power of two in the int object pointed to by exp and returns the value x, such that x has a magnitude in the interval [1/2, 1) or zero, and value equals x * 2^exp.
If x is zero, both parts of the result are zero.
If x is ∞ or NaN, frexp returns x and stores zero into the int object pointed to by exp.