_strtoui64, _wcstoui64, _strtoui64_l, _wcstoui64_l

Konvertieren einer Zeichenfolge in einen __int64-Wert ohne Vorzeichen.

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
);

Parameter

  • nptr
    Klicken Sie auf NULL endende Zeichenfolge zu konvertieren.

  • endptr
    Zeiger auf Zeichen, das die Überprüfung beendet.

  • base
    Der zu verwendende Basis.

  • locale
    Der zu verwendende Gebietsschema.

Rückgabewert

_strtoui64gibt den Wert zurück, der in der Zeichenfolge dargestellt werden, es sei denn, nptrdie Darstellung als einem Überlauf führen würde. In diesem Fall wird sie _UI64_MAXzurückgibt._strtoui64gibt 0 zurück, wenn keine Konvertierung ausgeführt werden kann.

_UI64_MAX wird in LIMITS.H. definiert.

Wenn nptrNULL ist, oder base und entweder kleiner als 2 oder größer als 36 nicht 0 ist, wird errno zu EINVALfestgelegt.

Weitere Informationen finden Sie unter _doserrno, errno, _sys_errlist und _sys_nerr Weitere Informationen über diese und andere Rückgabecodes.

Hinweise

Die _strtoui64Funktion konvertiert nptr zu unsigned __int64._wcstoui64 ist eine Breitzeichen-Version von _strtoui64. handeln nptr-Argument ist eine Zeichenfolge mit Breitzeichen.Andernfalls verhalten sich diese Funktionen identisch.

Beenden beider Funktionen, der die Zeichenfolge nptr am ersten Zeichen gelesen, nicht als Teil einer Zahl erkennen können.Dies ist möglicherweise NULL, oder es ist möglicherweise die erste größer oder gleich basenumerische Zeichen.

Zuweisung generischer Textroutinen

TCHAR.H-Routine

_UNICODE & _MBCS nicht definiert

_MBCS definieren

_UNICODE definiert

_tcstoui64

_strtoui64

_strtoui64

_wstrtoui64

_tcstoui64_l

_strtoui64_l

_strtoui64_l

_wstrtoui64_l

Die aktuelle LC_NUMERICKategorieeinstellung des Gebietsschemas bestimmt Erkennung des Basis Signierung in nptr. Weitere Informationen finden Sie unter setlocale.Die Funktionen ohne das Suffix verwenden _l dem aktuellen Gebietsschema. _strtoui64_lund_wcstoui64_lsind den entsprechenden Funktionen _l ohne das Suffix identisch, mit der Ausnahme, dass sie verwenden Sie stattdessen das Gebietsschema, das übergeben wird.Weitere Informationen finden Sie unter Gebietsschema.

Wenn endptr nicht NULList, wird ein Zeiger auf das Zeichen, das die Überprüfung beendet wurde, am Speicherort gespeichert, der durch endptrdargestellt wird.Wenn keine Konvertierung ausgeführt werden kann (keine gültigen Ziffern gefunden wurden, oder eine ungültige Basis) angegeben wurde, wird der Wert von nptr am Speicherort gespeichert, der durch endptrdargestellt wird.

_strtoui64erwartet nptr , zu einer Zeichenfolge im folgenden Format zu veranschaulichen:

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

whitespacebesteht möglicherweise Leerzeichen, Tabstoppzeichen und die ignoriert werden. digitssind eine oder mehrere Dezimalstellen.Das erste Zeichen, das nicht das Formular passt, beendet die Überprüfung.Wenn base zwischen 2 und 36 liegt, wird er als Basis der Zahl verwendet.Wenn base 0 (null) ist, werden die ersten Zeichen der Zeichenfolge, die von nptr gezeigte verwendet, um die Basis zu bestimmen.Wenn das erste Zeichen 0 ist und das zweite Zeichen „x“ oder „X“ ist, wird die Zeichenfolge als oktale ganze Zahl interpretiert. Andernfalls wird sie als decimal interpretiert.Wenn das erste Zeichen „0 " festgelegt ist, und das zweite Zeichen „x“ oder „X“ ist, wird die Zeichenfolge als ganze Hexadezimalzahl interpretiert.Wenn das erste Zeichen „1 " bis „9 " ist, wird die Zeichenfolge als ganze Dezimalzahl interpretiert.Der Buchstabe“ bis „z“ (oder „A“ durch „Z ") werden die Werte 10 und 35 zugewiesen. nur alphabetische Zeichen, deren bestimmte Werte kleiner sind als base sind zulässig.

Anforderungen

Routine

Erforderlicher Header

_strtoui64

<stdlib.h>

_wcstoui64

<stdlib.h> oder <wchar.h>

_strtoui64_l

<stdlib.h>

_wcstoui64_l

<stdlib.h> oder <wchar.h>

Um Kompatibilität zusätzlichen Informationen finden Sie unter Kompatibilität in der Einführung.

Beispiel

// 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 );
}
  

Siehe auch

Referenz

Datenkonvertierung

Gebietsschema

localeconv

setlocale, _wsetlocale

Zeichenfolge mit den Funktionen des numerischen Werts

strtod, _strtod_l, wcstod, _wcstod_l

strtoul, _strtoul_l, wcstoul, _wcstoul_l

atof, _atof_l, _wtof, _wtof_l