strtoul, _strtoul_l, wcstoul, _wcstoul_l
Dize işaretsiz uzun tamsayı değerine dönüştürür.
unsigned long strtoul(
const char *nptr,
char **endptr,
int base
);
unsigned long _strtoul_l(
const char *nptr,
char **endptr,
int base,
_locale_t locale
);
unsigned long wcstoul(
const wchar_t *nptr,
wchar_t **endptr,
int base
);
unsigned long _wcstoul_l(
const wchar_t *nptr,
wchar_t **endptr,
int base,
_locale_t locale
);
Parametreler
nptr
Dönüştürmek için boş sonlandırılmış dize.endptr
Taramayı durdurur karakter için işaretçi.base
Kullanılacak numarasını temel.locale
Kullanılacak yerel ayarı.
Dönüş Değeri
strtoulDönüştürülmüş değeri varsa döndürür veya ULONG_MAX taşan.strtouldönüştürme işlemi, 0 değerini döndürür.wcstoulanalogously çok değerlerini döndürür strtoul.Her iki işlevi için errno ayarlamak ERANGE taşma veya yetersiz gelme ortaya çıkarsa.
Bkz: _doserrno, errno, _sys_errlist ve _sys_nerr bu ve diğer ilgili daha fazla bilgi için kodları dönün.
Notlar
Bu işlevlerden her biri girdi dizesini bir sayıya dönüştürür nptr için bir unsignedlong.
strtouldize okuma başlıyor nptr ilk karakterinde bir numarasının bir parçası tanıdığını olamaz.Bu sondaki boş karakter olabilir ya da ilk sayısal karakter sayısından büyük veya eşit olabilir base.LC_NUMERIC Bölgesel kategori ayarı belirler tanıma sayı tabanı karakterinin nptr; Daha fazla bilgi için bkz: setlocale.strtoulve wcstoul geçerli yerel ayarı; kullanmak _strtoul_lve _wcstoul_l yerine geçirilen yerel kullandıkları dışında aynıdır.Daha fazla bilgi için bkz. Yerel ayar.
endptr Değil NULL, tarama durdu karakter için bir işaretçi olarak gösterilen konumda depolanan endptr.Dönüştürme işlemi, (geçerli bir basamak bulunamadı veya geçersiz bir temel belirtildi) değerini nptr göre sıralanmasını konumunda depolanan endptr.
wcstoulgeniş karakter sürümü strtoul; kendi nptr bağımsız değişkeni olan bir geniş karakter dizesi.Aksi takdirde bu işlevler aynı şekilde davranır.
Genel metin yordamı eşlemeleri
TCHAR.H yordamına girildi |
_UNICODE & _mbcs tanımlı değil |
Tanımlanan _mbcs |
Tanımlanan _UNICODE |
---|---|---|---|
_tcstoul |
strtoul |
strtoul |
wcstoul |
_tcstoul_l |
strtoul_l |
_strtoul_l |
_wcstoul_l |
strtoulbeklediği nptr aşağıdaki biçimde bir dizeye işaret edecek şekilde:
[whitespace] [{+ | –}] [0 [{ x | X }]] [digits]
A whitespace göz ardı edilir; boşluk ve sekme karakterleri oluşabilir digitsbir veya daha fazla ondalık basamağı olan.Bu form için uygun değil ilk karakter taramayı durdurur.base Numarasını temel olarak kullanılan 2, 36 arasında ise.base Göre sıralanmasını dizenin ilk karakterinin 0'dır ve nptr Bankası belirlemek için kullanılır.İlk karakteri 0'dır ve ikinci karakteri 'x' veya 'x' değil, dize sekizlik bir tamsayı olarak yorumlanır. Aksi halde, ondalık sayı olarak yorumlanır.İlk karakter '0' dir ve ikinci bir karakter 'x' veya 'x' dizeyi onaltılık tamsayı olarak yorumlanır.İlk karakter ' 1' ile ' 9' ise, dize bir ondalık tamsayı olarak yorumlanır.Harfleri 35 deerleri 10 'a' ile 'z' (veya 'a'-'z') atanır; yalnızca atanan değerleri olan harfleri daha az base izin verilir.strtoulartı sağlar (+) veya eksi (–) işareti öneki; Dönüş değeri değilleme uygulanmış önüne bir eksi işareti gösterir.
Gereksinimler
Yordamı |
Gerekli başlık |
---|---|
strtoul |
<stdlib.h> |
wcstoul |
<stdlib.h> veya <wchar.h> |
_strtoul_l |
<stdlib.h> |
_wcstoul_l |
<stdlib.h> veya <wchar.h> |
Ek uyumluluk bilgileri için bkz: Uyumluluk giriş.
Örnek
Örneğin bakın strtod.
.NET Framework Eşdeğeri
Ayrıca bkz.
Başvuru
strtod, _strtod_l, wcstod, _wcstod_l