Sdílet prostřednictvím


Řetězec číselné hodnoty funkce

Poznámky

Každá funkce v strtod řady převede řetězec zakončený na číselnou hodnotu.V následující tabulce jsou uvedeny dostupné funkce.

Function

Description

strtod

Převést řetězec na hodnotu s plovoucí desetinnou dvojitou přesností

strtol

Převést řetězec na dlouhé celé číslo

strtoul

Převést řetězec na dlouhé celé číslo bez znaménka

_strtoi64

Převést řetězec na 64-bit __int64 celé číslo

_strtoui64

Převést řetězec na nepodepsané 64 bit __int64 celé číslo

wcstod, wcstol, wcstoul, and _wcstoi64 are wide-character versions of strtod, strtol, strtoul, and _strtoi64, respectively.Řetězec argument každá z těchto funkcí pro celý znak je znak celý řetězec; Každá funkce chová stejně jeho protějšku jedním byte–character jinak.

strtod Funkce má dva argumenty: první vstupní řetězec a druhý ukazatel na znak, který končí procesu převodu.strtol, strtoul, _strtoi64 a _strtoui64 třetí argument přijmout jako základní číslo pomocí procesu převodu.

Vstupní řetězec je posloupnost znaků, které lze interpretovat jako číselnou hodnotu zadaného typu.Každá funkce ukončí čtení řetězce u prvního znaku, který nelze rozpoznat jako část čísla.Může to být ukončujícím znakem null.Pro strtol, strtoul, _strtoi64, a _strtoui64, tento znak ukončující může být také prvního číselného znaku větší než nebo rovno základní uživatelem zadané číslo.

Pokud uživatelský ukazatel na znak konce o převodu není nastaven na NULL v okamžiku volání ukazatel na znak, který přestal prohledávání budou uloženy tam místo.Pokud lze provést bez převodu (nebyly nalezeny žádné platné číslice nebo byl zadán neplatný base) na této adrese je uložena hodnota ukazatel na řetězec.

strtodočekává řetězec následující formulář:

mezery] sign] digits] **.**digits [ {d | D | e | E}signdigits

A mezery může být tvořeno znaky mezera nebo tabulátor, které jsou ignorovány; znaménko je buď plus (+) nebo minus (); a digits jsou jeden nebo více desetinných míst.Žádné číslic se zobrazí před znak Číselná soustava, alespoň jeden musí být uvedena za znak Číselná soustava.Mohou následovat desítkových číslic exponentu tvoří úvodní písmeno (d, d, e, nebo e) a volitelně znaménkem.Exponent část ani radix znak se zobrazí, předpokládá se znak radix poslední číslice v řetězci následovat.První znak, který tento formulář nevejde zastaví skenování.

strtol, strtoul, _strtoi64, A _strtoui64 funkce očekávat řetězec následující formulář:

mezery[{+ | }]0 { x | X}]] digits

Pokud základní argument hodnotu mezi 2 a 36, pak slouží jako základní číslo.Pokud je 0, počátečních znaků odkazuje konce z převodu ukazatele se používají 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ž základní jsou povoleny.strtoula _strtoui64 povolit plus (+) nebo minus () znak předpony; úvodní znaménko minus označuje, že je Negované vrácenou hodnotu.

Výstupní hodnota je ovlivněno nastavením LC_NUMERIC kategorie nastavení národního prostředí; Viz setlocale Další informace.Verze tyto funkce bez _l příponu použít aktuální národní prostředí pro toto národní prostředí závislé na chování; verze s _l přípony jsou shodné s výjimkou, že používají místo Předaný parametr národního prostředí.

Pokud hodnoty vrácené těmito funkcemi způsobí přetečení nebo podtečení aplikace nebo při převodu není možné, jsou zvláštní případ hodnoty vrácené uvedeno:

Function

Podmínka

Vrácená hodnota

strtod

Přetečení

+/- HUGE_VAL

strtod

Podtečení nebo bez převodu

0

strtol

+ Přetečení

LONG_MAX

strtol

-Přetečení

LONG_MIN

strtol

Podtečení nebo bez převodu

0

_strtoi64

+ Přetečení

_I64_MAX

_strtoi64

-Přetečení

_I64_MIN

_strtoi64

Bez převodu

0

_strtoui64

Přetečení

_UI64_MAX

_strtoui64

Bez převodu

0

_I64_MAX, _I64_MIN, a _UI64_MAX jsou definovány v MEZÍCH.H.

wcstod, wcstol, wcstoul, _wcstoi64, and _wcstoui64 are wide-character versions of strtod, strtol, strtoul, _strtoi64, and _strtoui64, respectively; ukazatel na konec o převodu argument každá z těchto funkcí pro celý znak je znak celý řetězec.Jinak každá z těchto funkcí pro celý znak chová stejně jeho protějšku jednou byte–character.

Viz také

Referenční dokumentace

Převod dat

Národní prostředí

Výklad vícebajtové znakové sekvence

Podpora s plovoucí desetinnou čárkou

atof, _atof_l, _wtof, _wtof_l