Premier IT Outsourcing and Support Services within the UK

User Tools

Site Tools


EXPM1(3) Linux Programmer's Manual EXPM1(3)


     expm1, expm1f, expm1l - exponential minus 1


     #include <math.h>
     double expm1(double x);
     float expm1f(float x);
     long double expm1l(long double x);
     Link with -lm.
 Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
         _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
             || _XOPEN_SOURCE >= 500
             || /* Since glibc 2.19: */ _DEFAULT_SOURCE
             || /* Glibc versions <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
     expm1f(), expm1l():
         _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
             || /* Since glibc 2.19: */ _DEFAULT_SOURCE
             || /* Glibc versions <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE


     These functions return a value equivalent to
         exp(x) - 1
     The result is computed in a way that is accurate even if the value of x
     is near zero--a case where exp(x) - 1 would be inaccurate due  to  sub-
     traction of two numbers that are nearly equal.


     On success, these functions return exp(x) - 1.
     If x is a NaN, a NaN is returned.
     If x is +0 (-0), +0 (-0) is returned.
     If x is positive infinity, positive infinity is returned.
     If x is negative infinity, -1 is returned.
     If the result overflows, a range error occurs, and the functions return
     -HUGE_VAL, -HUGE_VALF, or -HUGE_VALL, respectively.


     See math_error(7) for information on how to determine whether an  error
     has occurred when calling these functions.
     The following errors can occur:
     Range error, overflow
            errno  is  set  to ERANGE (but see BUGS).  An overflow floating-
            point exception (FE_OVERFLOW) is raised.


     For  an  explanation  of  the  terms  used   in   this   section,   see
     allbox;  lbw27  lb  lb  l  l  l.  Interface Attribute Value T{ expm1(),
     expm1f(), expm1l() T}   Thread safety  MT-Safe


     C99, POSIX.1-2001, POSIX.1-2008.


     For some large negative x values (where the function result  approaches
     -1), expm1() raises a bogus underflow floating-point exception.
     For some large positive x values, expm1() raises a bogus invalid float-
     ing-point exception in addition to the expected overflow exception, and
     returns a NaN instead of positive infinity.
     Before  version  2.11,  the  glibc  implementation did not set errno to
     ERANGE when a range error occurred.


     exp(3), log(3), log1p(3)


     This page is part of release 4.16 of the Linux  man-pages  project.   A
     description  of  the project, information about reporting bugs, and the
     latest    version    of    this    page,    can     be     found     at
                                2017-09-15                          EXPM1(3)
/data/webs/external/dokuwiki/data/pages/man/expm1f.txt · Last modified: 2019/05/17 09:32 by

Was this page helpful?-11+1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki