1. NOM

modf, modff, modfl - Séparer la partie entière et décimale d'un nombre réel

2. SYNOPSIS

 
Sélectionnez
#include <math.h>
double modf(double x, double *iptr);
float modff(float x, float *iptr);
long double modfl(long double x, long double *iptr);



Effectuez l'édition des liens avec l'option -lm.

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

modf(), modfl() :
    _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
ou cc -std=c99

3. DESCRIPTION

La fonction modf() scinde son argument x en une partie entière et une partie décimale, chacune d'elles ayant le signe de x. La partie entière est stockée à l'emplacement pointé par iptr.

4. VALEUR RENVOYÉE

La fonction modf() renvoie la partie décimale de x. Si x n'est pas un nombre (NaN, pour « Not a Number »), un NaN est renvoyé, et *iptr est rempli avec un NaN. Si x est l'infini positif (resp. l'infini négatif), +0 (resp. -0) est renvoyé et *iptr est positionné à l'infini positif (resp. l'infini négatif).

5. ERREURS

Aucune erreur ne se produit.

6. ATTRIBUTS

6.1. Multithreading (voir pthreads(7))

Les fonctions modf(), modff() et modfl() sont sûre dans un contexte multithread.

7. CONFORMITÉ

C99, POSIX.1-2001. La variante renvoyant un double est également conforme à SVr4, BSD 4.3 et C89.

8. VOIR AUSSI

frexp(3), ldexp(3)

9. COLOPHON

Cette page fait partie de la publication 3.52 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse http://www.kernel.org/doc/man-pages/.

10. TRADUCTION

Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.

Christophe Blaess <http://www.blaess.fr/christophe/> (1996-2003), Alain Portal <http://manpagesfr.free.fr/> (2003-2006). Florentin Duneau et l'équipe francophone de traduction de Debian (2006-2009).

Veuillez signaler toute erreur de traduction en écrivant à < >.

Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».