floor(3M) floor(3M)
NAME
floor, floorf, ceil, ceilf, copysign, fmod, fmodf, fabs, fabsf, rint,
remainder - Abrunden, Aufrunden, Rest bei Division, Absolutbetrag
SYNTAX
cc [flag ...] file ... -lm [library ...]
#include <math.h>
double floor(double x);
float floorf(float x);
double ceil(double x);
float ceilf(float x);
double copysign(double x, double y);
double fmod(double x, double y);
float fmodf(float x, float y);
double fabs(double x);
float fabsf(float x);
double rint(double x);
double remainder(double x, double y);
BESCHREIBUNG
floor() und floorf() geben den größten ganzzahligen Wert (als Zahl vom
Typ double bzw. float) zurück, der nicht größer als x ist.
ceil() und ceilf() geben die kleinste ganze Zahl vom Typ double
zurück, die nicht kleiner als x ist.
copysign() gibt x mit dem Vorzeichen von y zurück.
fmod() und fmodf() geben den Gleitkommarestwert der Division von x
durch y zurück. Genauer gesagt, geben sie die Zahl f mit dem gleichen
Vorzeichen wie x zurück, das heißt x = iy + f für eine Ganzzahl i und
|f| < |y|.
fabs() und fabsf() geben den Absolutwert von x zurück, |x|.
Die Funktion rint() gibt den ganzzahligen Wert (als Zahl vom Typ
double) zurück, der je nach dem aktuellen Rundungsmodus am nächsten zu
x liegt. Der aktuelle Rundungsmodus ist implementierungsabhängig. Wenn
der aktuelle Rundungsmodus nach negativ unendlich rundet, ist rint()
identisch mit floor(). Wenn der aktuelle Rundungsmodus nach positiv
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
floor(3M) floor(3M)
unendlich rundet, ist rint() identisch mit ceil().
remainder() gibt den Gleitkommarest der Division x durch y zurück.
Genauer gesagt, gibt es den Wert r = x - yn zurück, wobei n die ganze
Zahl ist, die am dichtesten beim exakten Wert x/y liegt. Wann immer
|n - x/y| = ½, ist n gerade.
ERGEBNIS
floor() und ceil() geben x zurück, wenn x eine beliebige NaN ist, und
errno wird auf EDOM gesetzt. Wenn der korrekte Wert einen Überlauf
verursachen würde, liefert floor() -HUGEVAL und ceil() HUGEVAL
zurück, und errno wird auf ERANGE gesetzt. Wenn x ein unendlicher Wert
oder 0 ist, wird x zurückgegeben.
fmod() und fmodf() geben das jeweilige Argument zurück, wenn x oder y
eine beliebige NaN ist. Wenn x ein unendlicher Wert oder y 0 ist, wird
NaN zurückgegeben und errno auf EDOM gesetzt. Wenn x 0 oder y ein
unendlicher Wert ist, wird x zurückgegeben.
fabs() und fabsf() geben x zurück, wenn x eine beliebige NaN, und
errno wird auf EDOM gesetzt.
Nach erfolgreicher Ausführung gibt die Funktion rint() die Ganzzahl
(als Zahl mit doppelter Genauigkeit) zurück, die je nach dem aktuellen
Rundungsmodus am nächsten zu x liegt. Wenn x positiv oder negativ
unendlich ist (±Inf), gibt rint() x zurück. Ist der Wert von x gleich
NaN, wird NaN zurückgegeben, und errno möglicherweise auf EDOM
gesetzt.
remainder() gibt NaN zurück, wenn y 0 ist, und setzt errno auf EDOM.
FEHLER
Die folgenden Beschreibungen der Fehlercodes sind funktionsspezifisch.
Eine allgemeingültige Beschreibung finden Sie in introprm2(2) bzw. in
errno(5).
Die Funktion remainder() schlägt bei folgender Bedingung fehl:
EDOM Das Argument y ist 0 oder das Argument x ist positiv oder
negativ unendlich.
Die Funktion remainder() kann bei folgender Bedingung fehlschlagen:
EDOM Das Argument x oder y ist NaN.
Die Funktion rint() kann bei folgender Bedingung fehlschlagen:
EDOM Das Argument x ist NaN.
HINWEISE
Die Funktionen floorf(), ceilf(), fmodf() und fabsf() sind nur im
ANSI-Modus zu verwenden.
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98
floor(3M) floor(3M)
SIEHE AUCH
abs(3C), matherr(3M), math(5).
Seite 3 Reliant UNIX 5.44 Gedruckt 11/98