Cette page vous a-t-elle été utile ?
Votre avis sur ce contenu est important. N'hésitez pas à nous faire part de vos commentaires.
Vous avez d'autres commentaires ?
1500 caractères restants
strtold, _strtold_l, wcstold, _wcstold_l
and
div
eof
not
or
xor
Collapse the table of content
Expand the table of content
Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

strtold, _strtold_l, wcstold, _wcstold_l

Convertit les chaînes en une valeur longue à virgule flottante double précision.

long double strtold(
   const char *nptr,
   char **endptr 
);
long double _strtold_l(
   const char *nptr,
   char **endptr,
   _locale_t locale
);
long double wcstold(
   const wchar_t *nptr,
   wchar_t **endptr 
);
long double wcstold_l(
   const wchar_t *nptr,
   wchar_t **endptr,
   _locale_t locale
);

nptr

Chaîne terminée par Null à convertir.

endptr

Pointeur vers le caractère qui arrête l'analyse.

locale

Paramètres régionaux à utiliser.

strtold retourne la valeur du nombre à virgule flottante en tant que long double, sauf lorsque la représentation provoque un dépassement de capacité, auquel cas la fonction retourne la valeur +/-HUGE_VALL. Le signe de HUGE_VALL correspond au signe de la valeur qui ne peut pas être représentée. strtold retourne 0 si aucune conversion ne peut être exécutée ou un dépassement de capacité se produit.

wcstold retourne les valeurs de façon analogue à strtold. Pour les deux fonctions, errno a la valeur ERANGE en cas de surcapacité ou de sous-capacité et en cas d'appel du gestionnaire de paramètre non valide, comme décrit dans Validation de paramètre.

Pour plus d'informations sur les codes de retour, consultez errno, _doserrno, _sys_errlist et _sys_nerr.

Chaque fonction convertit la chaîne d'entrée nptr en long double. La fonction strtold convertit nptr en une valeur longue double précision. La fonction strtold arrête de lire la chaîne nptr au premier caractère qu'elle ne peut pas reconnaître comme faisant partie d'un nombre. Il peut s'agir du caractère null de fin. La version à caractères larges de strtold est wcstold; son argument nptr est une chaîne à caractères larges. Sinon, ces fonctions se comportent sinon de façon identique.

Mappages de routines de texte générique

Routine TCHAR.H

_UNICODE & _MBCS non définis

_MBCS défini

_UNICODE défini

_tcstold

strtold

strtold

wcstold

_tcstold_l

_strtold_l

_strtold_l

_wcstold_l

Le paramètre de la catégorie LC_NUMERIC des paramètres régionaux actuels détermine la reconnaissance des caractères de base dans nptr. Pour plus d'informations, consultez setlocale, _wsetlocale. Les fonctions sans le suffixe _l utilisent les paramètres régionaux locaux ; _strtold_l et _wcstold_l sont identiques à _strtold et _wcstold sauf qu'elles utilisent les paramètres régionaux qui sont transmis. Pour plus d'informations, consultez Paramètres régionaux.

Si endptr n'a pas la valeur NULL, un pointeur vers le caractère qui a arrêté l'analyse est enregistré à l'emplacement désigné par endptr. Si aucune conversion ne peut être effectuée (aucun chiffre valide n'a été trouvé ou une base non valide a été spécifiée), la valeur de nptr est enregistrée à l'emplacement désigné par endptr.

strtold attend nptr pour pointer vers une chaîne au format suivant :

[whitespace] [sign] [digits] [.digits] [ {d | D | e | E }[sign]digits]

Un whitespace peut se composer d'espaces et de caractères de tabulations, qui sont ignorés ; un sign est soit plus (+) soit moins () ; et des digits se composent d'un ou plusieurs chiffres décimaux. Si aucun chiffre ne s'affiche avant le caractère de base, au moins un doit apparaître après le caractère de base. Les nombres décimaux peuvent être suivis d'un exposant, qui comprend une lettre préliminaire (d, D, e ou E) et éventuellement un entier signé. Si ni une partie d'exposant ni un caractère de base n'apparaît, il suppose qu'un caractère de base suit le dernier chiffre dans la chaîne. Le premier caractère qui ne correspond pas à ce formulaire arrête l'analyse.

Routine

En-tête requis

strtold , _strtold_l

<stdlib.h>

wcstold , _wcstold_l

<stdlib.h> ou <wchar.h>

Pour plus d'informations sur la compatibilité, consultez Compatibilité.

// crt_strtold.c
// Build with: cl /W4 /Tc crt_strtold.c
// This program uses strtold to convert a
// string to a long double-precision value.

#include <stdlib.h>
#include <stdio.h>

int main( void )
{
   char *string;
   char *stopstring;
   long double x;

   string = "3.1415926535898This stopped it";
   x = strtold(string, &stopstring);
   printf("string = %s\n", string);
   printf("   strtold = %.13Lf\n", x);
   printf("   Stopped scan at: %s\n\n", stopstring);
}
string = 3.1415926535898This stopped it
   strtold = 3.1415926535898
   Analyse arrêtée à : Cela l'a arrêté
Microsoft réalise une enquête en ligne pour recueillir votre opinion sur le site Web de MSDN. Si vous choisissez d’y participer, cette enquête en ligne vous sera présentée lorsque vous quitterez le site Web de MSDN.

Si vous souhaitez y participer,
Afficher:
© 2015 Microsoft