#include <math.h> double infnan(int error);
Utilisez -lm à l'édition de liens pour lier avec la bibliothèque mathématique.
Si error vaut -ERANGE (-Infini), -HUGE_VAL est renvoyé.
Si error vaut autre chose, NAN est renvoyé.
#include <signal.h>
#include <math.h>
#include <stdio.h>
int
main (void)
{
double x;
/* Ignorer le signal d'erreur pour division par zéro */
signal (SIGFPE, SIG_IGN);
x = 1.0;
x = x / 0.0;
printf ("x = 1.0/0.0, isnan (x) = %d\n", isnan (x));
printf (" isinf (x) = %d\n", isinf (x));
x = 0.0;
x = x / 0.0;
printf ("x = 0.0/0.0, isnan (x) = %d\n", isnan (x));
printf (" isinf (x) = %d\n", isinf (x));
exit (EXIT_SUCCESS);
}
$ ./a.out
x = 1.0/0.0, isnan (x) = 0
isinf (x) = 1
x = 0.0/0.0, isnan (x) = 1
isinf (x) = 0
Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 4 novembre 1996 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 infnan ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.
Dernière mise à jour : 17 juillet 2008