strtoull
, _strtoull_l
, , wcstoull
_wcstoull_l
Převede řetězce na celočíselnou unsigned long long
hodnotu.
Syntaxe
unsigned long long strtoull(
const char *strSource,
char **endptr,
int base
);
unsigned long long _strtoull_l(
const char *strSource,
char **endptr,
int base,
_locale_t locale
);
unsigned long long wcstoull(
const wchar_t *strSource,
wchar_t **endptr,
int base
);
unsigned long long _wcstoull_l(
const wchar_t *strSource,
wchar_t **endptr,
int base,
_locale_t locale
);
Parametry
strSource
Řetězec ukončený hodnotou null, který se má převést.
endptr
Ukazatel na znak, který zastaví kontrolu.
base
Číselný základ, který se má použít.
locale
Národní prostředí, které se má použít.
Vrácená hodnota
strtoull
vrátí převedenou hodnotu, pokud existuje, nebo ULLONG_MAX
při přetečení. strtoull
vrátí hodnotu 0, pokud nelze provést žádný převod. wcstoull
vrátí hodnoty analogicky k strtoull
. U obou funkcí je nastaveno, errno
jestli dojde k ERANGE
přetečení nebo podtečení.
Další informace o návratových kódech naleznete v tématu errno
, _doserrno
, _sys_errlist
a _sys_nerr
.
Poznámky
Každá z těchto funkcí převede vstupní řetězec strSource
na celočíselnou unsigned long long
hodnotu.
strtoull
přestane číst řetězec strSource
na prvním znaku, který nedokáže rozpoznat jako součást čísla. Může se jednat o ukončující znak null nebo může být prvním číselným znakem, který je větší nebo roven base
. Nastavení LC_NUMERIC
kategorie národního prostředí určuje rozpoznávání znaku radixu v strSource
; další informace viz , viz . _wsetlocale
setlocale
strtoull
a wcstoull
použijte aktuální národní prostředí a _strtoull_l
_wcstoull_l
místo toho použijte národní prostředí, které je předáno, ale jsou identické jinak. Další informace naleznete v tématu Národní prostředí.
Pokud endptr
není NULL
, je ukazatel na znak, který zastavil kontrolu, uložen v umístění, na které odkazuje endptr
. Pokud nelze provést žádný převod (nebyly nalezeny žádné platné číslice nebo byla zadána neplatná základna), hodnota strSource
je uložena v umístění, na které odkazuje endptr
.
wcstoull
je verze širokého znaku strtoull
a její strSource
argument je řetězec širokého znaku. Jinak se tyto funkce chovají stejně.
Ve výchozím nastavení je globální stav této funkce vymezen na aplikaci. Chcete-li toto chování změnit, přečtěte si téma Globální stav v CRT.
Mapování rutin obecného textu
Rutina TCHAR.H | _UNICODE a _MBCS není definován |
_MBCS definovaný |
_UNICODE definovaný |
---|---|---|---|
_tcstoull |
strtoull |
strtoull |
wcstoull |
_tcstoull_l |
strtoull_l |
_strtoull_l |
_wcstoull_l |
strtoull
strSource
očekává, že odkazuje na řetězec následujícího formuláře:
[
whitespace
] [{+
|-
}] [0
[{x
|X
}]] []digits
|letters
Může whitespace
se skládat z mezery a znaků tabulátoru, které jsou ignorovány. digits
jsou jedno nebo více desetinných číslic. letters
jsou jedno nebo více písmen "a" až 'z' (nebo 'A' až 'Z'). První znak, který se nevejde do tohoto formuláře, zastaví prohledávání. Pokud base
je mezi 2 a 36, použije se jako základ čísla. Pokud base
je hodnota 0, počáteční znaky řetězce, na který strSource
odkazuje, slouží k určení základu. Pokud je první znak 0 a druhý znak není x nebo X, řetězec se interpretuje jako osmičkové celé číslo. Pokud je první znak 0 a druhý znak je x nebo X, řetězec se interpretuje jako šestnáctkové celé číslo. Pokud je první znak 1 až 9, řetězec se interpretuje jako desetinné číslo. Písmena "a" až 'z' (nebo 'A' až 'Z') jsou přiřazena hodnoty 10 až 35; pouze písmena, jejichž přiřazené hodnoty jsou menší, než base
jsou povoleny. První znak mimo rozsah základny zastaví kontrolu. Pokud je například base
0 a první znak prohledáván je 0, předpokládá se osmičkové celé číslo a znak 8 nebo 9 zastaví kontrolu. strtoull
umožňuje předponu znaménka plus (+
) nebo mínus (-
). Počáteční znaménko minus označuje, že návratová hodnota je negovaná.
Požadavky
Rutina | Požadovaný hlavičkový soubor |
---|---|
strtoull |
<stdlib.h> |
wcstoull |
<stdlib.h> nebo <wchar.h> |
_strtoull_l |
<stdlib.h> |
_wcstoull_l |
<stdlib.h> nebo <wchar.h> |
Další informace o kompatibilitě najdete v tématu Kompatibilita.
Příklad
Podívejte se na příklad pro strtod
.
Viz také
Konverze dat
Národní prostředí
localeconv
setlocale
, _wsetlocale
Funkce řetězcových k číselným hodnotám
strtod
, _strtod_l
, , wcstod
_wcstod_l
strtol
, wcstol
, , _strtol_l
_wcstol_l
strtoul
, _strtoul_l
, , wcstoul
_wcstoul_l
strtoll
, _strtoll_l
, , wcstoll
_wcstoll_l
atof
, _atof_l
, , _wtof
_wtof_l