strtoumax
, _strtoumax_l
, wcstoumax
, _wcstoumax_l
Dizeleri desteklenen en büyük işaretsiz tamsayı türünde bir tamsayı değerine dönüştürür.
Sözdizimi
uintmax_t strtoumax(
const char *strSource,
char **endptr,
int base
);
uintmax_t _strtoumax_l(
const char *strSource,
char **endptr,
int base,
_locale_t locale
);
uintmax_t wcstoumax(
const wchar_t *strSource,
wchar_t **endptr,
int base
);
uintmax_t _wcstoumax_l(
const wchar_t *strSource,
wchar_t **endptr,
int base,
_locale_t locale
);
Parametreler
strSource
Dönüştürülecek null ile sonlandırılan dize.
endptr
Taramayı durduran karakterin işaretçisi.
base
Kullanılacak sayı tabanı.
locale
Kullanılacak yerel ayar.
Dönüş değeri
strtoumax
dönüştürülen değeri (varsa) veya UINTMAX_MAX
taşma durumunda döndürür. strtoumax
dönüştürme gerçekleştirilemiyorsa 0 döndürür. wcstoumax
ile benzer değerler strtoumax
döndürür. Her iki işlev için de errno
taşma veya yetersizlik oluşursa olarak ayarlanır ERANGE
.
İade kodları hakkında daha fazla bilgi için bkz. errno
, _doserrno
, _sys_errlist
ve _sys_nerr
.
Açıklamalar
Bu işlevlerin her biri giriş dizesini strSource
bir uintmax_t
tamsayı değerine dönüştürür.
strtoumax
dizesini strSource
bir sayının parçası olarak tanıyamayan ilk karakterde okumayı durdurur. Sonlandırıcı null karakter veya değerinden büyük veya buna eşit base
ilk sayısal karakter olabilir. LC_NUMERIC
Yerel ayarın kategori ayarı, içindeki strSource
radix karakterinin tanınmasını belirler. Daha fazla bilgi için bkz. setlocale
, _wsetlocale
. strtoumax
ve wcstoumax
geçerli yerel ayarı kullanın; _strtoumax_l
ve _wcstoumax_l
bunun yerine geçirilen yerel ayarı kullanmaları dışında aynıdır. Daha fazla bilgi için bkz . Yerel Ayar.
değilse endptr
NULL
, taramayı durduran karakterin işaretçisi tarafından endptr
işaret edilen konumda depolanır. Dönüştürme gerçekleştirilemiyorsa (geçerli basamak bulunamadıysa veya geçersiz bir taban belirtildiyse), değeri strSource
tarafından endptr
işaret edilen konumda depolanır.
öğesinin strtoumax
geniş karakterli sürümüdür wcstoumax
; strSource
bağımsız değişkeni geniş karakterli bir dizedir. Aksi takdirde, bu işlevler aynı şekilde davranır.
Genel metin yordamı eşlemeleri
TCHAR.H yordamı | _UNICODE ve _MBCS tanımlanmadı |
_MBCS Tanımlanan |
_UNICODE Tanımlanan |
---|---|---|---|
_tcstoumax |
strtoumax |
strtoumax |
wcstoumax |
_tcstoumax_l |
strtoumax_l |
_strtoumax_l |
_wcstoumax_l |
strtoumax
strSource
aşağıdaki biçimdeki bir dizeye işaret etmesini bekler:
[
whitespace
] [{+
|-
}] [0
[{x
|X
}]] [digits
|letters
]
A whitespace
, yoksayılan boşluk ve sekme karakterlerinden oluşabilir. digits
bir veya daha fazla ondalık basamaktır. letters
'a' ile 'z' (veya 'A' - 'Z' arasında) harflerinden biri veya daha fazlasıdır. Bu forma uymayan ilk karakter taramayı durdurur. 2 ile 36 arasındaysa base
, sayının tabanı olarak kullanılır. 0 ise base
, temeli belirlemek için tarafından strSource
işaret edilen dizenin ilk karakterleri kullanılır. İlk karakter '0' ve ikinci karakter 'x' veya 'X' değilse, dize sekizli tamsayı olarak yorumlanır. İlk karakter '0' ve ikinci karakter 'x' veya 'X' ise, dize onaltılık tamsayı olarak yorumlanır. İlk karakter '1' ile '9' arasındaysa, dize ondalık tamsayı olarak yorumlanır. 'a' ile 'z' (veya 'A' ile 'Z' arasında) harflerine 10 ile 35 arasında değerler atanır; yalnızca atanan değerlerden küçük base
olan harflere izin verilir. Tabanın aralığının dışındaki ilk karakter taramayı durdurur. Örneğin, 0 ise ve taranan ilk karakter '0' ise base
, sekizli bir tamsayı varsayılır ve '8' veya '9' karakteri taramayı durdurur. strtoumax
artı işaretine (+
) veya eksi işaretine (-
) izin verir; baştaki eksi işareti, dönüş değerinin dönüştürülen dizenin mutlak değerinin iki tamamlayıcısı olduğunu gösterir.
Gereksinimler
Yordam | Gerekli başlık |
---|---|
strtoumax , wcstoumax , _strtoumax_l , _wcstoumax_l |
<inttypes.h> |
Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.
Örnek
örneğine strtod
bakın.
Ayrıca bkz.
Veri dönüştürme
Yerel ayar
localeconv
setlocale
, _wsetlocale
Sayısal değer işlevlerine dize
strtod
, _strtod_l
, wcstod
, _wcstod_l
strtoimax
, _strtoimax_l
, wcstoimax
, _wcstoimax_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
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin