| Click this button to go to the index for this section. |
exp(3)
NAME
exp, expm1, log, log2, log10, log1p, pow - Exponential, logarithm, and power functionsLIBRARY
Math Library (libm.a)SYNOPSIS
#include <math.h> double exp (double x); float expf (float x); double expm1 (double x); float expm1f (float x); double log (double x); float logf (float x); double log2 (double x); float log2f (float x); double log10 (double x); float log10f (float x); double log1p (double y); float log1pf (float y); double pow (double x, double y); float powf (float x, float y);STANDARDS
Interfaces documented on this reference page conform to industry standards as follows: exp(): XPG4 expm1(): XPG4-UNIX log(): XPG4 log10(): XPG4 log1p(): XPG4-UNIX pow(): XPG4 Refer to the standards(5) reference page for more information about industry standards and associated tags.DESCRIPTION
The exp() and expf() functions compute the value of the exponential function, defined as e**x, where e is the constant used as a base for natural logarithms. The expm1() and expm1f() functions compute exp(x) - 1 accurately, even for tiny x. The log() and logf() functions compute the natural (base e) logarithm of x. The log2() and log2f() functions compute the base 2 logarithm of x. The log10() and log10f() functions compute the common (base 10) logarithm of x. The log1p() and log1pf() functions compute log(1+y) accurately, even for tiny y. The pow() and powf() functions raise a floating-point base x to a floating-point exponent y. The value of pow(x,y) is computed as e**(y ln(x)) for positive x. If x is 0 or negative, see your language reference manual. Passing a NaN input value to pow() produces a NaN result for y not equal to 0. For pow(NaN,0), see your language reference manual. The following table describes function behavior in response to exceptional arguments: ______________________________________________________________ Function Exceptional Argument Routine Behavior ______________________________________________________________ exp(), expf() x > ln(max_float) Overflow exp(), expf() x < ln(min_float) Underflow expm1(), expm1f() x > ln(max_float) Overflow expm1(), expm1f() x < ln(min_float) Underflow log(), logf() x < 0 Invalid argument log(), logf() x = 0 Overflow log2(), log2f() x < 0 Invalid argument log2(), logf2() x = 0 Overflow log10(), log10f() x < 0 Invalid argument log10(), log10f() x = 0 Overflow log1p(), log1pf() 1+y < 0 Invalid argument log1p(), log1pf() 1+y = 0 Overflow pow(), powf() y ln(x) > ln(max_float) Overflow pow(), powf() y ln(x) < ln(min_float) Underflow ______________________________________________________________ The following table lists boundary values used by these functions: ____________________________________________________________________________ Value Data Hexadecimal Value Decimal Value Name Type ____________________________________________________________________________ ln(max_float) S_FLOAT 42B17218 88.7228391 T_FLOAT 40862E42FEFA39EF 709.7827128933840 ln(min_float) S_FLOAT C2CE8ED0 -103.2789 T_FLOAT C0874385446D71C3 -744.4400719213813 ____________________________________________________________________________