exp(3M) exp(3M)
NAME
exp, expf, expm1, cbrt, log, logf, log10, log10f, log1p, pow, powf,
sqrt, sqrtf - Exponential-, Logarithmus-, Potenz-, Quadratwurzelfunk-
tionen
SYNTAX
cc [flag ...] file ... -lm [library ...]
cc -O -Ksd [flag ...] file ... -J sfm [library ...]
#include <math.h>
double exp(double x);
float expf(float x);
double expm1(double x);
double cbrt(double x);
double log(double x);
float logf(float x);
double log10(double x);
float log10f(float x);
double log1p(double x);
double pow(double x, double y);
float powf(float x, float y);
double sqrt(double x);
float sqrtf(float x);
BESCHREIBUNG
exp() und expf() geben e^x zurück.
expm1() berechnet e^x-1.0.
cbrt() gibt die Kubikwurzel von x zurück.
log() und logf() geben den natürlichen Logarithmus von x zurück. Der
Wert von x muß positiv sein.
log10() und log10f() geben den Logarithmus zur Basis 10 von x zurück.
Der Wert von x muß positiv sein.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
exp(3M) exp(3M)
log1p() berechnet loge(1.0 + x). Der Wert von x muß größer als -1.0
sein.
pow() und powf() geben x^y zurück. Wenn x gleich 0 ist, muß y positiv
sein. Wenn x negativ ist, muß y eine ganze Zahl sein.
sqrt() und sqrtf() geben die nichtnegative Quadratwurzel von x zurück.
Der Wert von x darf nicht negativ sein.
ERGEBNIS
exp() und expf() geben HUGEVAL zurück, wenn der Wert zu einem Über-
lauf führen würde oder 0, wenn der Wert einen Unterlauf ergeben würde.
errno wird auf ERANGE gesetzt.
Wenn x gleich NaN ist, gibt expm1 den Wert NaN zurück und errno wird
möglicherweise auf EDOM gesetzt. Wenn x positiv unendlich ist, gibt
expm1() den Eingabewert zurück. Wenn x negativ unendlich ist, gibt
expm1() den Wert -1.0 zurück. Wenn der Wert zu einem Überlauf führt,
gibt expm1() den Wert HUGEVAL zurück und setzt errno möglicherweise
auf ERANGE.
Der Wert von expm1(x) ist für niedrige Werte von x möglicherweise
genauer als exp(x)-1.0.
Die Funktionen expm1() und log1p() sind vor allem im Finanzwesen für
Berechnungen von ((1+x)^n-1)/x nützlich, wie beispielsweise
expm1(n * log1p(x))/x
wobei x ein sehr niedriger Wert ist (beispielsweise zum Berechnen nie-
driger Tageszinssätze). Diese Funktionen vereinfachen ferner das
Schreiben genauer Areafunktionen.
log(), logf(), log10() und log10f() geben -HUGEVAL zurück und setzen
errno auf EDOM, wenn x nicht positiv ist. In diesem Fall wird eine
Nachricht, die einen DOMAIN-Fehler anzeigt, auf der Standardfehleraus-
gabe ausgegeben.
Nach erfolgreicher Ausführung gibt log1p() den natürlichen Logarithmus
von 1.0 + x zurück. Wenn x gleich NaN ist, gibt log1p() den Wert NaN
zurück und setzt errno möglicherweise auf EDOM. Ist x kleiner als
-1.0, gibt log1p() den Wert -HUGEVAL oder NaN zurück und setzt errno
auf EDOM. Wenn x gleich -1.0 ist, gibt log1p() den Wert -HUGEVAL
zurück und setzt errno möglicherweise auf ERANGE.
pow() und powf() geben 0 zurück und setzen errno auf EDOM, wenn x 0
und y nicht positiv ist, oder wenn x negativ und y keine ganze Zahl
ist. In diesen Fällen wird eine Nachricht auf der Standardfehleraus-
gabe ausgegeben, die einen DOMAIN-Fehler anzeigt. Wenn der korrekte
Wert für pow() oder powf() zu einem Überlaufen oder zu einem Unterlau-
fen führen würde, geben diese Funktionen HUGEVAL bzw. 0 zurück und
setzen errno auf ERANGE.
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98
exp(3M) exp(3M)
sqrt() und sqrtf() geben 0 zurück und setzen errno auf EDOM, wenn x
negativ ist. Eine Nachricht, die den Fehler DOMAIN anzeigt, wird in
diesem Fall auf der Standardfehlerausgabe ausgegeben.
HINWEISE
Die Funktionen expf(), logf(), log10f(), powf() und sqrtf() sind nur
im ANSI-Modus zu verwenden.
SIEHE AUCH
ilogb(3C), isnan(3C), hypot(3M), matherr(3M), sinh(3M), math(5).
Seite 3 Reliant UNIX 5.44 Gedruckt 11/98