frexp
Break floating-point number into normalized fraction and power of 2
Interface
#include <math.h>
double | frexp (double value, int *exp) |
long | frexpl (long double value, int *exp) |
float | frexpf (float value, int *exp) |
Description
The frexp functions break the floating-point number value into a normalized fraction and an integral power of 2. They store the integer in the int object pointed to by exp. The functions return a number x such that x has a magnitude in the interval or 0, and value = .Example:
Example - Break floating-point number into normalized fraction and power of 2
Workings
#include <stdio.h> #include <math.h> int main(void) { double x = 1024, fraction; int e; fraction = frexp(x, &e); printf("x = %.2lf = %.2lf * 2^%d\n", x, fraction, e); return 0; }
Solution
Output:
x = 1024.00 = 0.50 * 2^11