_strtoi64, _wcstoi64, _strtoi64_l, _wcstoi64_l
Bir dizeyi __int64 değerine dönüştürün.
__int64 _strtoi64(
const char *nptr,
char **endptr,
int base
);
__int64 _wcstoi64(
const wchar_t *nptr,
wchar_t **endptr,
int base
);
__int64 _strtoi64_l(
const char *nptr,
char **endptr,
int base,
_locale_t locale
);
__int64 _wcstoi64_l(
const wchar_t *nptr,
wchar_t **endptr,
int base,
_locale_t locale
);
Parametreler
nptr
Dönüştürmek için null ile sonlandırılmış dize.endptr
Taramayı durduran karakter işaretçisi.base
Kullanılacak sayı tabanı.locale
Kullanılacak yerel ayar.
Dönüş Değeri
_strtoi64temsilin taşmaya neden olduğu zaman dışında nptr dizesinde temsil edilen değeri döndürür, o durumda ise _I64_MAX veya _I64_MIN öğesini döndürür.Dönüştürme gerçekleştirilemiyorsa işlev 0 döndürür._wcstoi64, benzer olarak strtoi64 öğesine değerleri döndürür.
_I64_MAXve _I64_MIN LIMITS.H içinde tanımlanır.
nptr, NULL olursa veya base sıfır dışında bir değerse ve 2'den küçük veya 36'dan büyükse, errno, EINVAL olarak ayarlanır.
Bunlar ve diğer dönüş kodları hakkında daha fazla bilgi için bkz. _doserrno, errno, _sys_errlist ve _sys_nerr
Notlar
_strtoi64 işlevi, nptr'yi __int64'ye dönüştürür.Her iki işlev de, bir sayının parçası olarak tanıyamadığı ilk karakterde nptr dizesini okumayı durdurur.Bu sondaki boş karakter olabilir veya base değerinden büyük veya ona eşit olan ilk sayısal karakter olabilir._wcstoi64, _strtoi64 öğesinin geniş karakterli sürümüdür; nptr geniş karakterli bir dizedir.Bu işlevler, aksi halde aynı şekilde davranır.
Genel Metin Yordam Eşleşmeleri
TCHAR.H yordamı |
_UNICODE & _MBCS tanımlanmamış |
_MBCS tanımlanmış |
_UNICODE tanımlanmış |
---|---|---|---|
_tcstoi64 |
_strtoi64 |
_strtoi64 |
_wcstoi64 |
_tcstoi64_l |
_strtoi64_l |
_strtoi64_l |
_wcstoi64_l |
nptr*;* öğesindeki taban karakterin tanınmasını yerel ayarların LC_NUMERIC kategori ayarı belirler; daha fazla bilgi için bkz. setlocaleThe_l soneki olmadan işlevler geçerli yerel ayarı kullanır; _strtoi64_l ve _wcstoi64_l, geçirilen yerel ayarı kullanmaları dışında _l soneki olmayan ilgili işlevlerle aynıdır.Daha fazla bilgi için bkz. Yerel Ayar.
endptr öğesi NULL değilse, taramayı durduran karaktere ait bir işaretçi endptr tarafından işaret edilen konumda depolanır.Dönüştürme gerçekleştirilemezse (geçerli hiç basamak bulunamamış veya geçersiz bir taban belirtilmişse), nptr öğesinin değeri endptr tarafından işaret edilen konumda depolanır.
_strtoi64nptr öğesinin aşağıdaki formda olan bir dizeyi işaret etmesini bekler:
[whitespace] [{+ | –}] [0 [{ x | X }]] [digits]
whitespace yoksayılan boşluk ve sekme karakterlerinden oluşabilir; digitsise bir ya da daha fazla ondalık basamaklıdır.Bu forma uymayan ilk karakter taramayı durdurur.base 2 ile 36 arasındaysa, sayının tabanı olarak kullanılır.base 0 olursa, tabanı belirlemek için nptr tarafından işaret edilen dizenin ilk karakterleri kullanılır.İlk karakter 0 ise, ikinci karakter 'x' veya 'X' değilse, dize sekizlik bir tamsayı olarak yorumlanır.İlk karakter '0', ikinci karakter 'x' veya 'X' ise, dize onaltılık bir tamsayı olarak yorumlanır.İlk karakter '1'-'9' arasında bir sayı ise, dize ondalık bir tamsayı olarak yorumlanır.'a'-'z' (veya 'A'-'Z') arasındaki harflere 10-35 arasında değerler atanır; sadece atanmış değerleri base öğesinden küçük olan değerlere izin verilir.Tabanın aralığının dışındaki ilk karakter taramayı durdurur.Örneğin, base 0 ise ve taranan ilk karakter '0' ise, sekizlik bir tamsayı olduğu varsayılır ve '8' veya '9' karakteri taramayı durduracaktır.
Gereksinimler
Yordam |
Gerekli başlık |
---|---|
_strtoi64, _strtoi64_l |
<stdlib.h> |
_wcstoi64, _wcstoi64_l |
<string.h> veya <wchar.h> |
Ek uyumluluk bilgileri için Giriş altındaki Uyumluluk bölümüne bakın.
Ayrıca bkz.
Başvuru
Sayısal Değer İşlevleri Dizesi
strtod, _strtod_l, wcstod, _wcstod_l