Partager via


_strtoui64, _wcstoui64, _strtoui64_l, _wcstoui64_l

Convertit une chaîne en valeur non signée d' __int64 .

unsigned __int64 _strtoui64(
   const char *nptr,
   char **endptr,
   int base 
);
unsigned __int64 _wcstoui64(
   const wchar_t *nptr,
   wchar_t **endptr,
   int base 
);
unsigned __int64 _strtoui64_l(
   const char *nptr,
   char **endptr,
   int base,
   _locale_t locale
);
unsigned __int64 _wcstoui64(
   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

_strtoui64retourne 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 _UI64_MAX._strtoui64retourne 0 si aucune conversion ne peut être exécutée.

_UI64_MAX est défini dans LIMITS.H.

Si nptr est NULL ou base est différent de zéro et inférieur à 2 ou supérieure à 36, errno est défini à EINVAL.

Consultez _doserrno, errno, _sys_errlist, et _sys_nerr pour plus d'informations sur ce point, ainsi que d'autres, les codes de retour.

Notes

la fonctiond' _strtoui64convertit nptr à unsigned __int64._wcstoui64 est une version à caractère élargi d' _strtoui64; son argument d' nptr est une chaîne à caractères larges.Sinon ces fonctions ont un comportement identique.

Arrêt de les deux fonctions lisant la chaîne nptr au premier caractère qu'ils ne peuvent pas identifier 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.

mappages de routines de texte générique

routine de TCHAR.H

_MBCS & de _UNICODE non défini

_MBCS défini

_UNICODE défini

_tcstoui64

_strtoui64

_strtoui64

_wstrtoui64

_tcstoui64_l

_strtoui64_l

_strtoui64_l

_wstrtoui64_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 de _l utilisent les paramètres régionaux ; _strtoui64_let_wcstoui64_lsont 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.

_strtoui64attend nptr indique une chaîne au format suivant :

[whitespace] [{+ | –}] [0 [{ x | X }]] [digits]

whitespacepeut se composer d'espaces et des tabulations, qui sont ignorés ; digitssont 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

_strtoui64

<stdlib.h>

_wcstoui64

<stdlib.h> ou <wchar.h>

_strtoui64_l

<stdlib.h>

_wcstoui64_l

<stdlib.h> ou <wchar.h>

Pour des informations de compatibilité supplémentaires, consultez compatibilité dans l'introduction.

Exemple

// crt_strtoui64.c
#include <stdio.h>

unsigned __int64 atoui64(const char *szUnsignedInt) {
   return _strtoui64(szUnsignedInt, NULL, 10);
}

int main() {
   unsigned __int64 u = atoui64("18446744073709551615");
   printf( "u = %I64u\n", u );
}
  

Voir aussi

Référence

Conversion de données

Paramètres régionaux

localeconv

setlocale, _wsetlocale

Chaîne aux fonctions de valeur numérique

strtod, _strtod_l, wcstod, _wcstod_l

strtoul, _strtoul_l, wcstoul, _wcstoul_l

atof, _atof_l, _wtof, _wtof_l