strtoul, _strtoul_l, wcstoul, _wcstoul_l
Převod řetězce na nepodepsaný dlouhý celočíselnou hodnotu.
unsigned long strtoul(
const char *nptr,
char **endptr,
int base
);
unsigned long _strtoul_l(
const char *nptr,
char **endptr,
int base,
_locale_t locale
);
unsigned long wcstoul(
const wchar_t *nptr,
wchar_t **endptr,
int base
);
unsigned long _wcstoul_l(
const wchar_t *nptr,
wchar_t **endptr,
int base,
_locale_t locale
);
Parametry
nptr
Řetězec zakončený převést.endptr
Ukazatel na znak, který zastaví skenování.base
Číslo základní použití.locale
Použití národního prostředí.
Vrácená hodnota
strtoulVrátí hodnotu převedenou případné nebo ULONG_MAX při přetečení.strtoulpřevod lze provést, vrátí hodnotu 0.wcstoulVrátí hodnoty postupuje analogicky k strtoul.Pro obě funkce errno je nastavena na ERANGE Pokud dojde k přetečení nebo podtečení.
Viz _doserrno, kód chyby, _sys_errlist a _sys_nerr Další informace o tyto a další návratových kódů.
Poznámky
Každá z těchto funkcí převede vstupní řetězec nptr se unsignedlong.
strtoulukončí čtení řetězce nptr nelze rozpoznat jako součást čísla prvního znaku.To může být ukončujícím znakem null, nebo může být první číselný znak větší než nebo rovno base.LC_NUMERIC Kategorie nastavení národního prostředí určuje rozpoznávání znaku radix nptr; Další informace naleznete v tématu setlocale.strtoula wcstoul použít aktuální národní prostředí; _strtoul_la _wcstoul_l jsou identické s výjimkou, že používají místo předaný národní prostředí.Další informace naleznete v tématu Národní prostředí.
Pokud endptr není NULL, ukazatel na znak, který přestal skenování je uložen v umístění odkazuje endptr.Pokud lze provést bez převodu (nebyly nalezeny žádné platné číslice nebo byl zadán neplatný base) hodnotu nptr je uložen na adrese, na kterou odkazuje endptr.
wcstoulje verze celého znaku strtoul; jeho nptr je řetězec znaků wide argument.Jinak tyto funkce chovat stejně.
Obecný Text rutinní mapování
TCHAR.Rutina H |
_UNICODE & _MBCS není definován |
_MBCS, definice |
_UNICODE, definice |
---|---|---|---|
_tcstoul |
strtoul |
strtoul |
wcstoul |
_tcstoul_l |
strtoul_l |
_strtoul_l |
_wcstoul_l |
strtouločekává nptr pro řetězec následující formulář:
[whitespace] [{+ | –}] [0 [{ x | X }]] [digits]
A whitespace se může skládat z místa a kartu znaky, které jsou ignorovány; digitsjsou-li jeden nebo více desetinných míst.První znak, který tento formulář nevejde zastaví skenování.Pokud base je mezi 2 a 36, použita jako základní číslo.Pokud base 0 počátečních znaků odkazuje řetězec nptr jsou použity ke stanovení základu.Pokud je první znak je 0 a druhý znak "x" nebo "X", řetězec interpretován jako osmičkové číslo; jinak je interpretován jako desetinné číslo.Pokud je první znak "0" a druhý znak "x" nebo "X" řetězec interpretována jako hexadecimální číslo.Pokud je první znak ' 1' až ' 9', řetězec je interpretován jako desítkové celé číslo.Písmena "a" až "z" (nebo "A" až "Z") jsou přiřazeny hodnoty 10 až 35; pouze písmena, jejichž přiřazené hodnoty jsou menší než base jsou povoleny.strtoulplus umožňuje (+) nebo minus (–) znak předpony; úvodní znaménko minus označuje, že je Negované vrácenou hodnotu.
Požadavky
Rutina |
Požadované záhlaví |
---|---|
strtoul |
<stdlib.h> |
wcstoul |
<stdlib.h> nebo <wchar.h> |
_strtoul_l |
<stdlib.h> |
_wcstoul_l |
<stdlib.h> nebo <wchar.h> |
Další informace o kompatibilitě, viz Compatibility v úvodu.
Příklad
Viz příklad pro strtod.
Ekvivalent v rozhraní .NET Framework
Viz také
Referenční dokumentace
Řetězec číselné hodnoty funkce
strtod, _strtod_l, wcstod, _wcstod_l