fmod(3) Library Functions Manual fmod(3) BEZEICHNUNG fmod, fmodf, fmodl - Funktionen berechnen Divisionsrest als Fliesskommazahl BIBLIOTHEK Mathematik-Bibliothek (libm, -lm) UBERSICHT #include double fmod(double x, double y); float fmodf(float x, float y); long double fmodl(long double x, long double y); Mit Glibc erforderliche Feature-Test-Makros (siehe feature_test_macros(7)): fmodf(), fmodl(): _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L || /* Seit Glibc 2.19: */ _DEFAULT_SOURCE || /* Glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE BESCHREIBUNG Diese Funktionen berechnen den Rest der Division von x durch y als Fliesskommazahl. Der Ruckgabewert ist x - n * y, wobei n der zur Ganzzahl abgerundete Quotient von x / y ist. Um den Modulus zu erhalten, genauer das kleinste positive Residuum, mussen Sie die Ausgabe von fmod wie folgt anpassen: z = fmod(x, y); if (z < 0) z += y; Alternativ konnen Sie das als fmod(fmod(x, y) + y, y) formulieren, aber das zweite fmod kostet deutlich mehr als eine Verzweigung. RUCKGABEWERT Bei Erfolg geben diese Funktionen den Wert x - n*y fur diejenige Ganzzahl n zuruck, so dass der zuruckgegebene Wert das gleiche Vorzeichen wie x hat und einen Betrag, der kleiner ist als der Betrag von y. Falls x oder y keine Zahlen (>>NaN<<) sind, wird >>NaN<< zuruckgegeben. Falls x unendlich ist, tritt ein Wertebereichsfehler auf und es wird >>NaN<< zuruckgegeben. Falls y Null ist, tritt ein Wertebereichsfehler auf und es wird >>NaN<< zuruckgegeben. Falls x +0 (-0) und y nicht Null ist, wird +0 (-0) zuruckgegeben. FEHLER In math_error(7) erfahren Sie, wie Sie Fehler bei der Ausfuhrung dieser Funktionen erkennen. Die folgenden Fehler konnen auftreten: Wertebereichsfehler: x ist unendlich errno wird auf EDOM gesetzt (siehe aber FEHLER). Es wird der Fliesskomma-Ausnahmefehler >>unzulassige Fliesskommazahl<< (FE_INVALID) ausgelost. Wertebereichsfehler: y ist Null errno wird auf EDOM gesetzt. Es wird der Fliesskomma-Ausnahmefehler >>unzulassige Fliesskommazahl<< (FE_INVALID) ausgelost. ATTRIBUTE Siehe attributes(7) fur eine Erlauterung der in diesem Abschnitt verwandten Ausdrucke. +--------------------------------+-------------------------+-----------+ |Schnittstelle | Attribut | Wert | +--------------------------------+-------------------------+-----------+ |fmod(), fmodf(), fmodl() | Multithread-Fahigkeit | MT-Sicher | +--------------------------------+-------------------------+-----------+ STANDARDS C11, POSIX.1-2008. GESCHICHTE C99, POSIX.1-2001. Die Variante, die double zuruckgibt, ist ausserdem konform zu SVr4, 4.3BSD, C89. FEHLER Vor Glibc 2.10 setzte die Glibc-Implementierung errno nicht auf EDOM, wenn ein Wertebereichsfehler fur ein unendliches x auftrat. BEISPIELE Der Aufruf fmod(372, 360) liefert 348 zuruck. Der Aufruf fmod(-372, 360) liefert -12 zuruck. Der Aufruf fmod(-372, -360) liefert auch -12 zuruck. SIEHE AUCH remainder(3) UBERSETZUNG Die deutsche Ubersetzung dieser Handbuchseite wurde von Markus Schmitt , Chris Leick und Helge Kreutzmann erstellt. Diese Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezuglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG ubernommen. Wenn Sie Fehler in der Ubersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Ubersetzer . Linux man-pages 6.06 31. Oktober 2023 fmod(3)