INFNAN

Section: Manuel du programmeur Linux (3)
Updated: 21 juillet 2003
Index


NOM
SYNOPSIS
DESCRIPTION
VALEUR RENVOYÉE
ERREURS
EXEMPLE
CONFORMITÉ
TRADUCTION

NOM

infnan - Traiter un résultat infini ou non-numérique (NaN).

SYNOPSIS

#include <math.h>

double infnan (int error);

DESCRIPTION

La fonction infnan() renvoie une valeur acceptable pour un résultat infini ou non numérique ("NaN", Not-a-Number). La valeur error peut être ERANGE pour indiquer l'infini, ou n'importe quoi d'autre pour représenter NaN. errno est également renseigné.

VALEUR RENVOYÉE

Si error vaut ERANGE (Infini), HUGE_VAL est renvoyé.
Si error vaut -ERANGE (-Infini), -HUGE_VAL est renvoyé.
Si error vaut autre chose, NAN est renvoyé.

ERREURS

ERANGE
La valeur de error est infinie (positive ou négative).
EDOM
La valeur de error est non-numérique (NaN).

EXEMPLE

        #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 (0);
}

$ ./a.out
x = 1.0/0.0, isnan (x) = 0
             isinf (x) = 1
x = 0.0/0.0, isnan (x) = 1
             isinf (x) = 0

CONFORMITÉ

BSD 4.3

TRADUCTION

Christophe Blaess, 1996-2003.