Linux |
CentOS 5.3 |
|
isnan(3) |
fpclassify, isfinite, isnormal, isnan − Macros de classification en virgule flottante. |
#include <math.h> int fpclassify(x); int isfinite(x); int isnormal(x); int isnan(x); int isinf(x); |
Les nombres en virgule flottante ont des valeurs spéciales, tels 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é en 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 normal en virgule flottante ; |
Les autres macros fournissent une réponse courte à des questions standards. |
isfinite(x) |
renvoie une valeur non nulle si |
isnormal(x) |
renvoie une valeur non nulle si |
isnan(x) |
renvoie une valeur non nulle si |
isinf(x) |
renvoie 1 si x vaut plus l’infini, et −1 si x vaut moins l’infini. |
Dans la glibc 2.01 et précédentes, 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). Pour utiliser les fonctions de la bibliothèque mathématique, il ne faut pas oublier d’ajouter l’argument −lm sur la ligne de commande de cc(1) ou ld(1), lors de l’édition des liens. Pour cette fonction, vous devez également compiler avec l’option −std=c99. |
C99 |
finite(3), INFINITY(3), isgreater(3) |
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 30 juin 2006. 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=en man 3 fpclassify ». N’hésitez pas à signaler à l’auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel. |
isnan(3) |