Provided by: manpages-fr_1.67.0-1_all bug

NOM

       strtod, strtof, strtold - Conversion d’une chaîne ASCII en nombre réel.

SYNOPSIS

       #include <stdlib.h>

       double strtod (const char *nptr, char **endptr);
       float strtof(const char *nptr, char **endptr);
       long double strtold(const char *nptr, char **endptr);

DESCRIPTION

       Les fonctions strtod,  strtof,  et  strtold  convertissent  la  portion
       initiale  de  la  chaîne  pointée  par  nptr en un réel de type double,
       float, et long double respectivement.

       La (portion initiale de la) chaîne attendue est de la forme suivante :

              Des espaces éventuels en tête,  ou  des  caractères  interprétes
              comme tels par isspace(3)

              Un éventuel signe plus (‘‘+’’) ou moins (‘‘-’’)

              Un  nombre  décimal  ou  hexadécimal, ou un infini, ou encore un
              non-nombre NAN (not-a-number).

       Un nombre  dcimal  consiste  en  une  séquence  non-vide  de  chiffres
       décimaux,   pouvant   contenir   un  point  décimal  (dépendant  de  la
       localisation, mais habituellement  ‘‘.’’),  suivi  éventuellement  d’un
       exposant  décimal.   Ce dernier est constitué d’un ‘‘E’’ ou ‘‘e’’ suivi
       éventuellement du signe plus ou du signe moins, puis une séquence  non-
       vide  de  de  chiffres  décimaux,  indiquant  la multiplication par une
       puissance de 10.

       Un nombre hexadcimal commence ‘‘0x’’ ou ‘‘0X’’, suivi  d’une  séquence
       non-vide  de  chiffres  hexadécimaux, pouvant contenir un point décimal
       suivi éventuellement d’un exposant binaire.  Ce dernier  est  constitué
       d’un  ‘‘P’’  ou  ‘‘p’’  suivi  éventuellement du signe plus ou du signe
       moins, puis une séquence non-vide de de chiffres décimaux, indiquant la
       multiplication  par  une  puissance  de 2. Il ne peut y avoir plus d’un
       point ou d’un exposant binaire.

       Un infini est soit ‘‘INF’’, soit ‘‘INFINITY’’, sans  tenir  compte  des
       différences entre majuscules et minuscules.

       Un  non-nombre  est  ‘‘NAN’’  (sans  différences majuscules/minuscules)
       suivi éventuellement par ‘(’, une séquence de caractères, et  ‘)’.   La
       chaîne de caractères indique le type de non-nombre de manière dépendant
       de l’implémentation.

VALEUR RENVOYÉE

       Ces fonctions renvoient la valeur convertie si c’est possible

       Si endptr n’est pas NULL, un  pointeur  sur  le  caractère  suivant  le
       dernier caractère converti y est stocké.

       Si  aucune  conversion  n’est possible, la fonction renvoie zéro, et la
       valeur de nptr est stockée dans endptr.

       Si la valeur convertie déclenche un débordement (overflow), la fonction
       renvoie plus ou moins HUGE_VAL (HUGE_VALF, HUGE_VALL) et errno contient
       le  code  d’erreur  ERANGE.   Si  la  valeur  convertie  déclenche   un
       debordement  inférieur  (underflow),  la  fonction  renvoie 0, et errno
       contient le code d’erreur ERANGE.

ERREURS

       ERANGE Débordement.

CONFORMITÉ

       ANSI C décrit strtod.  C99 décrit les deux autres fonctions.

VOIR AUSSI

       atof(3), atoi(3), atol(3), strtol(3), strtoul(3)

TRADUCTION

       Christophe Blaess, 1996-2003.