logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

This manual page is part of the POSIX Programmer's Manual. The Linux implementation of this interface

Application Usage

       None.

Description

       The  functionality  described  on  this  reference  page is aligned with the ISO C standard. Any conflict
       between the requirements described  here  and  the  ISO C  standard  is  unintentional.  This  volume  of
       POSIX.1‐2017 defers to the ISO C standard.

       These  functions shall break a floating-point number num into a normalized fraction and an integral power
       of 2. The integer exponent shall be stored in the int object pointed to by exp.

Errors

       No errors are defined.

       Thefollowingsectionsareinformative.

Examples

       None.

Future Directions

       None.

Name

       frexp, frexpf, frexpl — extract mantissa and exponent from a double precision number

Prolog

       This  manual  page  is part of the POSIX Programmer's Manual.  The Linux implementation of this interface
       may differ (consult the corresponding Linux manual page for details of Linux behavior), or the  interface
       may not be implemented on Linux.

Rationale

       None.

Return Value

       For finite arguments, these functions shall return the value x, such  that  x  has  a  magnitude  in  the
       interval [½,1) or 0, and num equals x times 2 raised to the power *exp.

       If num is NaN, a NaN shall be returned, and the value of *exp is unspecified.

       If num is ±0, ±0 shall be returned, and the value of *exp shall be 0.

       If num is ±Inf, num shall be returned, and the value of *exp is unspecified.

See Also

isnan(), ldexp(), modf()

       The Base Definitions volume of POSIX.1‐2017, <math.h>

Synopsis

       #include <math.h>

       double frexp(double num, int *exp);
       float frexpf(float num, int *exp);
       long double frexpl(long double num, int *exp);

See Also