strtol, wcstol, _strtol_l, _wcstol_l
Chaînes de converti en une valeur de long-entier.
long strtol(
const char *nptr,
char **endptr,
int base
);
long wcstol(
const wchar_t *nptr,
wchar_t **endptr,
int base
);
long _strtol_l(
const char *nptr,
char **endptr,
int base,
_locale_t locale
);
long _wcstol_l(
const wchar_t *nptr,
wchar_t **endptr,
int base,
_locale_t locale
);
Paramètres
nptr
Chaîne terminée par le caractère NULL à convertir.endptr
Pointeur vers le caractère qui arrête l'analyse.base
Base numérique à utiliser.locale
Paramètres régionaux à utiliser.
Valeur de retour
strtol retourne la valeur représentée dans la chaîne nptr, sauf lorsque la représentation peut provoquer un dépassement de capacité, auquel cas il retourne LONG_MAX ou LONG_MIN.strtol retourne 0 si aucune conversion ne peut être exécutée.retourne des valeurs d'wcstol de façon similaire aux strtol.Pour les deux fonctions, errno est défini à ERANGE si le dépassement de capacité ou le dépassement de capacité se produit.
Consultez _doserrno, errno, _sys_errlist, et _sys_nerr pour plus d'informations sur ce point et d'autres codes de retour.
Notes
la fonction d' strtol convertit nptr à long.strtol arrête de lire la chaîne nptr au premier caractère qu'il ne peut pas reconnaître dans le cadre d'un nombre.Cela peut être le caractère NULL de fin, ou peut être le premier chiffre supérieur ou égal à base.
wcstol est une version à caractère élargi d' strtol; son argument d' nptr est une chaîne à caractères larges.Ces fonctions se comportent de sinon.
mappages de routines de texte générique
routine de TCHAR.H |
_MBCS & de _UNICODE non défini |
_MBCS défini |
_UNICODE défini |
---|---|---|---|
_tcstol |
strtol |
strtol |
wcstol |
_tcstol_l |
_strtol_l |
_strtol_l |
_wcstol_l |
le paramètre actuel de catégorie d' LC_NUMERICdes paramètres régionaux détermine la reconnaissance du caractère de base dans nptr*;* pour plus d'informations, consultez setlocale.Les fonctions sans le suffixe d' _l utilisent les paramètres régionaux ; _strtol_l et _wcstol_l sont identiques aux fonctions correspondantes sans le suffixe d' _l à la différence qu'ils utilisent les paramètres régionaux passés à la place.Pour plus d'informations, consultez Paramètres régionaux.
Si endptr n'est pas NULL, un pointeur vers le caractère qui a arrêté l'analyse est stocké dans l'emplacement pointé par endptr.Si aucune conversion ne peut être exécutée (aucun chiffre valide n'a été trouvé ou une base non valide a été spécifiée), la valeur d' nptr est enregistrée à l'emplacement pointé par endptr.
strtolattend nptr indique une chaîne au format suivant :
[whitespace] [{+ | –}] [0 [{ x | X }]] [digits]
whitespace peut se composer d'espaces et des tabulations, qui sont ignorés ; digits sont un ou plusieurs chiffres décimaux.Le premier caractère qui ne rentre pas les arrêts de ce formulaire l'analyse.Si base est comprise entre 2 et 36, il est utilisé comme base du nombre.Si base est 0, les caractères initiaux de la chaîne désignée par nptr utilisés pour déterminer la base.Si le premier caractère est 0 et le deuxième caractère n'est pas « x » ou « X », la chaîne est interprétée comme un entier octal ; sinon, il est interprète comme un nombre décimal.Si le premier caractère est « 0 " et le deuxième caractère est « x » ou « X », la chaîne est interprétée comme un entier hexadécimal.Si le premier caractère est « 1 " à « 9 ", la chaîne est interprétée comme un entier décimal.Les lettres » à « z » (ou « A » à « Z ") sont assignées les valeurs 10 et 35 ; seuls les lettres dont les valeurs attribuées sont moins qu' base sont autorisées.
Configuration requise
routine |
en-tête requis |
---|---|
strtol |
<stdlib.h> |
wcstol |
<stdlib.h> ou <wchar.h> |
_strtol_l |
<stdlib.h> |
Pour des informations de compatibilité supplémentaires, consultez compatibilité dans l'introduction.
Exemple
Consultez l'exemple pour strtod.
Équivalent .NET Framework
System : : Conversion : : ToInt64
Voir aussi
Référence
Chaîne aux fonctions de valeur numérique
strtod, _strtod_l, wcstod, _wcstod_l