frexp,
frexpf
[split floating-point
number]
SYNOPSIS
#include <math.h> double frexp(double val, int *exp); float frexpf(float val, int *exp);
DESCRIPTION
All non zero, normal numbers
can be described as m
* 2**p.
frexp represents the double val as a mantissa, m, and a power of two p. The resulting mantissa will always be greater than or equal to 0.5, and less than 1.0 (as long as val is nonzero). The power of two will be stored in *exp.
m and p are calculated so that val = m 2p.
frexpf is identical, other than taking and returning floats rather than doubles.
RETURNS
frexp
returns the mantissa, m.
If val
is 0,
infinity, or NaN,
frexp
will set *exp
to 0
and return val.
COMPLIANCE
frexp
is ANSI. frexpf
is an extension.