Aracılığıyla paylaş


strtoimax, _strtoimax_l, wcstoimax, _wcstoimax_l

Bir dizeyi desteklenen en büyük imzalı tamsayı türünde bir tamsayı değerine dönüştürür.

Sözdizimi

intmax_t strtoimax(
   const char *strSource,
   char **endptr,
   int base
);
intmax_t wcstoimax(
   const wchar_t *strSource,
   wchar_t **endptr,
   int base
);
intmax_t _strtoimax_l(
   const char *strSource,
   char **endptr,
   int base,
   _locale_t locale
);
intmax_t _wcstoimax_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

strtoimax, dizesinde strSourcetemsil edilen değeri döndürür, ancak gösterimin taşmaya neden olacağı durumlar dışında veya INTMAX_MINdöndürür INTMAX_MAX ve errno olarak ERANGEayarlanır. Dönüştürme gerçekleştirilemiyorsa işlev 0 döndürür. wcstoimax ile benzer değerler strtoimaxdöndürür.

INTMAX_MAX ve INTMAX_MIN stdint.h içinde tanımlanır.

ise strSourceNULL veya base sıfır değilse ve 2'den küçük veya 36'dan büyükse olarak errno ayarlanır EINVAL.

İade kodları hakkında daha fazla bilgi için bkz. errno, _doserrno, _sys_errlistve _sys_nerr.

Açıklamalar

strtoimax işlevi bir intmax_töğesine dönüştürülürstrSource. öğesinin strtoimax geniş karakterli sürümüdür wcstoimax; strSource bağımsız değişkeni geniş karakterli bir dizedir. Aksi takdirde, bu işlevler aynı şekilde davranır. Her iki işlev de dizeyi strSource bir sayının parçası olarak tanıyamadıkları ilk karakterde okumayı durdurur. Sonlandırıcı null karakter veya değerinden büyük veya buna eşit baseilk sayısal karakter olabilir.

Yerel ayarın LC_NUMERIC kategori ayarı içindeki radix karakterinin strSourcetanınmasını belirler; daha fazla bilgi için bkz setlocale. , _wsetlocale. Son ekine sahip _l olmayan işlevler geçerli yerel ayarı kullanır ve _wcstoimax_l bunun yerine geçirilen yerel ayarı _strtoimax_l kullanmaları dışında son eki olmayan _l ilgili işlevlerle aynıdır. Daha fazla bilgi için bkz . Yerel Ayar.

değilse endptrNULL, taramayı durduran karakterin işaretçisi tarafından endptriş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 endptrişaret edilen konumda depolanır.

Genel metin yordamı eşlemeleri

TCHAR.H yordamı _UNICODE ve _MBCS tanımlanmadı _MBCS Tanımlanan _UNICODE Tanımlanan
_tcstoimax strtoimax strtoimax wcstoimax
_tcstoimax_l strtoimax_l _strtoimax_l _wcstoimax_l

strtoimaxstrSource 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ı) harflerinden bir 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.

Gereksinimler

Yordam Gerekli başlık
strtoimax, _strtoimax_l, wcstoimax, _wcstoimax_l <inttypes.h>

Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.

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
strtol, wcstol, _strtol_l, _wcstol_l
strtoul, _strtoul_l, wcstoul, _wcstoul_l
strtoumax, _strtoumax_l, wcstoumax, _wcstoumax_l
atof, _atof_l, _wtof, _wtof_l