FMOD(3) Manuel du programmeur Linux FMOD(3)

fmod, fmodf, fmodl - Fonction modulo réel

#include <math.h>
double fmod(double x, double y);
float fmodf(float x, float y);
long double fmodl(long double x, long double y);

Éditer les liens avec -lm.

Exigences de macros de test de fonctionnalités pour la glibc (consulter feature_test_macros(7)) :

fmodf(), fmodl() :

_ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
    || /* Since glibc 2.19: */ _DEFAULT_SOURCE
    || /* Glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

These functions compute the floating-point remainder of dividing x by y. The return value is x - n * y, where n is the quotient of x / y, rounded toward zero to an integer.

En cas de réussite, ces fonctions renvoient la valeur x - n*y, pour un entier n tel que la valeur de retour a le même signe que x et une norme inférieure à la norme de y.

Si x ou y n’est pas un nombre, un NaN est renvoyé.

Si x est une valeur infinie, une erreur de domaine est produite et un NaN est renvoyé.

Si y vaut zéro, une erreur de domaine est produite et un NaN est renvoyé.

Si x vaut +0 (resp. -0), et y n'est pas nul, +0 (resp. -0) est renvoyé.

Voir math_error(7) pour savoir comment déterminer si une erreur s'est produite lors de l'appel d'une de ces fonctions.

Les erreurs suivantes peuvent se produire :

Erreur de domaine : x est une valeur infinie
errno prend la valeur EDOM (mais consultez la section BOGUES). Une exception indiquant une virgule flottante incorrecte (FE_INVALID) est levée.
Erreur de domaine : y est nul.
errno prend la valeur EDOM. Une exception de virgule flottante non valable (FE_INVALID) est levée.

Pour une explication des termes utilisés dans cette section, consulter attributes(7).
Interface Attribut Valeur
fmod(), fmodf(), fmodl() Sécurité des threads MT-Safe

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

La variante renvoyant double est également conforme à SVr4, 4.3BSD et C89.

Avant la version 2.10, l'implémentation de la glibc ne définissait pas errno à EDOM lorsqu'une erreur de domaine pour un x infini.

remainder(3)

Cette page fait partie de la publication 5.11 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies et la dernière version de cette page, peuvent être trouvées à l'adresse https://www.kernel.org/doc/man-pages/.

La traduction française de cette page de manuel a été créée par Christophe Blaess https://www.blaess.fr/christophe/, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot <david@tilapin.org> et Cédric Boutillier <cedric.boutillier@gmail.com>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.

22 mars 2021