FPCLASSIFY
Section : Manuel du programmeur Linux (
3)
Mise à jour de la version anglaise : 26 juillet 2007
Index
Menu principal
NOM
fpclassify, isfinite, isnormal, isnan, isinf - Macros de classification en virgule flottante
SYNOPSIS
#include <math.h>
int fpclassify(x);
int isfinite(x);
int isnormal(x);
int isnan(x);
int isinf(x);
Utilisez
-std=c99
à la compilation ; utilisez
-lm
à l'édition de liens pour lier avec la bibliothèque mathématique.
Exigences de macros de test de fonctionnalités pour la glibc (voir
feature_test_macros(7)) :
fpclassify(),
isfinite(),
isnormal() :
_XOPEN_SOURCE >= 600 || _ISOC99_SOURCE ; ou
cc -std=c99
isnan() :
_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE || _ISOC99_SOURCE ; ou
cc -std=c99
isinf() :
_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 600 || _ISOC99_SOURCE ; ou
cc -std=c99
DESCRIPTION
Les nombres en virgule flottante peuvent avoir des valeurs spéciales,
telles que les infinis ou NaN.
Avec la macro
fpclassify(x)
vous pouvez connaître le type de
x.
La macro prend en argument n'importe quel type d'expression
en virgule flottante.
Le résultat est l'une des valeurs suivantes :
- FP_NAN
-
x
est un « non-nombre ».
- FP_INFINITE
-
x
vaut plus ou moins l'infini.
- FP_ZERO
-
x
est nul.
- FP_SUBNORMAL
-
x
est trop petit pour être représenté au format normalisé.
- FP_NORMAL
-
si aucun des cas précédents n'est vrai, alors c'est qu'il doit
s'agir d'un nombre réel normal.
Les autres macros fournissent une réponse courte
à des questions standard.
- isfinite(x)
-
renvoie une valeur non nulle si
(fpclassify(x) != FP_NAN && fpclassify(x) != FP_INFINITE)
- isnormal(x)
-
renvoie une valeur non nulle si
(fpclassify(x) == FP_NORMAL)
- isnan(x)
-
renvoie une valeur non nulle si
(fpclassify(x) == FP_NAN)
- isinf(x)
-
renvoie 1 si
x
vaut plus l'infini, et -1 si
x
vaut moins l'infini.
CONFORMITÉ
C99.
NOTES
Dans la glibc 2.01 et antérieures,
isinf()
renvoie une valeur non nulle (actuellement : 1) si
x
est un infini (positif ou négatif).
(C'est ainsi dans les recommandations de C99).
VOIR AUSSI
finite(3),
INFINITY(3),
isgreater(3)
TRADUCTION
Ce document est une traduction réalisée par Christophe Blaess
<http://www.blaess.fr/christophe/> le 30 juillet 2003
et révisée le 17 juillet 2008.
L'équipe de traduction a fait le maximum pour réaliser une adaptation
française de qualité. La version anglaise la plus à jour de ce document est
toujours consultable via la commande : « LANG=C man 3 fpclassify ».
N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute
erreur dans cette page de manuel.
Index
- NOM
-
- SYNOPSIS
-
- DESCRIPTION
-
- CONFORMITÉ
-
- NOTES
-
- VOIR AUSSI
-
- TRADUCTION
-
Dernière mise à jour : 17 juillet 2008