Udostępnij za pośrednictwem


Ciąg znaków numerycznych wartości funkcji

Uwagi

Każda funkcja w strtod rodziny konwertuje ciąg zakończony wartością zerową wartość liczbową.Dostępne funkcje są wymienione w poniższej tabeli.

Funkcja

Opis

strtod

Przekonwertować ciąg na wartość podwójnej precyzji

strtol

Przekonwertować ciąg na liczba całkowita długa

strtoul

Przekonwertować ciąg na liczba całkowita bez znaku long

_strtoi64

Przekonwertować ciąg na 64-bit __int64 integer

_strtoui64

64-Bitowe, niepodpisanych przekonwertować ciągu na __int64 integer

wcstod, wcstol, wcstoul, and _wcstoi64 are wide-character versions of strtod, strtol, strtoul, and _strtoi64, respectively.Argument ciąg, każda z tych funkcji szerokich znaków jest łańcuch szerokich znaków; Każda funkcja działa identycznie jego odpowiednikiem pojedynczego byte–character inaczej.

strtod Funkcja ma dwa argumenty: pierwszy to ciąg wejściowy i drugi wskaźnik do znaku, który kończy proces konwersji.strtol, strtoul, _strtoi64 i _strtoui64 podjąć trzeci argument jako numer bazowy używany w procesie konwersji.

Ciąg wejściowy jest sekwencja znaków, które mogą być interpretowane jako wartości liczbowe określonego typu.Każda funkcja Zatrzymuje czytanie ciągu znaków, od pierwszego znaku, który nie jest rozpoznawana jako część numeru.Może to być kończącego znaku null.Dla strtol, strtoul, _strtoi64, i _strtoui64, to znaku końca można także pierwszego znaku numerycznego większa niż lub równa liczbie dostarczone przez użytkownika podstawowej.

Jeśli wskaźnik dostarczone przez użytkownika do znaku końcowego konwersji nie jest ustawiony na NULL w momencie wywołania wskaźnik znak, którego praca została zatrzymana skanowania będzie tam przechowywane zamiast.Jeśli można wykonać bez konwersji (nie znaleziono żadnych prawidłowych cyfr lub określono nieprawidłowy base), wartość wskaźnika ciąg jest przechowywana pod tym adresem.

strtodspodziewa się ciągu następującą postać:

Odstępy] sign] digits] **.**digits [ {d | D | e | E}signdigits

A Odstępy może zawierać znaków spacja lub tabulator, które są ignorowane; znak jest albo plus (+) lub minus (); i digits są jeden lub więcej cyfr dziesiętnych.Jeśli nie cyfr pojawia się przed znakiem radix, co najmniej jeden musi znajdować się po znaku radix.Cyfr dziesiętnych może następować wykładniku, który składa się z listu (d, d, e, lub e) i opcjonalnie całkowita.Jeśli pojawi się część wykładniczego ani znaków radix, znak radix zakłada wykonaj ostatnią cyfrę w ciągu.Pierwszy znak, który nie mieści się ta forma zatrzymuje skanowanie.

strtol, strtoul, _strtoi64, I _strtoui64 funkcje oczekiwać, że ciąg następującą postać:

Odstępy[{+ | }]0 { x | X}]] digits

Jeśli argument bazowy jest między 2 a 36, następnie służy jako podstawa liczby.Jeśli jest 0, początkowe znaki odwołuje wskaźnik celu konwersji są używane do określenia podstawy.Jeśli pierwszy znak jest równa 0, a drugi znak nie jest 'x' lub 'X', ciąg jest interpretowana jako ósemkową liczby całkowitej; w przeciwnym razie jest interpretowana jako liczbę dziesiętną.Jeśli pierwszy znak jest "0" i jest drugi znak 'x' lub 'X', ciąg jest interpretowana jako szesnastkowe liczbą całkowitą.Jeśli pierwszy znak jest "1" przez "9", ciąg jest interpretowana jako dziesiętną liczbę całkowitą.Litery "" do "z" (lub "" przez "Z") są przypisane wartości od 10 do 35; tylko litery, w której przypisane wartości są mniejsze niż podstawowych są dozwolone.strtouli _strtoui64 Zezwalaj na znak plus (+) lub minus () znak prefiksu; wiodący znak minus wskazuje, że wartość zwracana jest zanegowane.

Wartość wyjściowa jest zagrożony ustawienie z LC_NUMERIC kategorii ustawienie regionalne; zobacz setlocale Aby uzyskać więcej informacji.Wersje te funkcje, bez _l sufiks za bieżące ustawienia regionalne to zachowanie zależnego od ustawień regionalnych; wersje z _l sufiks są identyczne, z wyjątkiem, że używają oni przekazany zamiast parametr ustawień regionalnych.

Gdy wartość zwracana przez te funkcje spowodowałoby przepełnienie lub niedomiar lub po konwersji nie jest możliwe, zwracane są specjalne wartości case, jak pokazano:

Funkcja

Warunek

Wartość zwracana

strtod

Przepełnienie

+/- HUGE_VAL

strtod

Niedomiar lub bez konwersji

0

strtol

+ Przepełnienie

LONG_MAX

strtol

-Przepełnienie

LONG_MIN

strtol

Niedomiar lub bez konwersji

0

_strtoi64

+ Przepełnienie

_I64_MAX

_strtoi64

-Przepełnienie

_I64_MIN

_strtoi64

Bez konwersji

0

_strtoui64

Przepełnienie

_UI64_MAX

_strtoui64

Bez konwersji

0

_I64_MAX, _I64_MIN, i _UI64_MAX są zdefiniowane w granicach.H.

wcstod, wcstol, wcstoul, _wcstoi64, and _wcstoui64 are wide-character versions of strtod, strtol, strtoul, _strtoi64, and _strtoui64, respectively; wskaźnik, aby argument koniec konwersji do każdego z tych funkcji szerokich znaków jest łańcuch szerokich znaków.W przeciwnym razie każda z tych funkcji szerokich znaków działa identycznie jego odpowiednikiem pojedynczego byte–character.

Zobacz też

Informacje

Konwersja danych

Ustawienia regionalne

Interpretacja sekwencje znaków wielobajtowych

Wsparcie zmiennoprzecinkowe

atof, _atof_l, _wtof, _wtof_l