strtoul
, , _strtoul_l
wcstoul
,_wcstoul_l
Mengonversi string menjadi nilai bilangan bulat panjang yang tidak ditandatangani.
Sintaks
unsigned long strtoul(
const char *strSource,
char **endptr,
int base
);
unsigned long _strtoul_l(
const char *strSource,
char **endptr,
int base,
_locale_t locale
);
unsigned long wcstoul(
const wchar_t *strSource,
wchar_t **endptr,
int base
);
unsigned long _wcstoul_l(
const wchar_t *strSource,
wchar_t **endptr,
int base,
_locale_t locale
);
Parameter
strSource
String yang dihentikan null untuk dikonversi.
endptr
Penunjuk ke karakter yang menghentikan pemindaian.
base
Basis angka yang akan digunakan.
locale
Lokal untuk digunakan.
Nilai hasil
strtoul
mengembalikan nilai yang dikonversi, jika ada, atau ULONG_MAX
pada luapan. strtoul
mengembalikan 0 jika tidak ada konversi yang dapat dilakukan. wcstoul
mengembalikan nilai secara analog ke strtoul
. Untuk kedua fungsi, errno
diatur ke ERANGE
jika luapan atau aliran bawah terjadi.
Untuk informasi selengkapnya tentang kode pengembalian, lihat errno
, , _doserrno
_sys_errlist
, dan _sys_nerr
.
Keterangan
Masing-masing fungsi ini mengonversi string strSource
input menjadi unsigned long
.
strtoul
berhenti membaca string strSource
pada karakter pertama yang tidak dapat dikenali sebagai bagian dari angka. Karakter ini mungkin penghentian NULL
, atau mungkin karakter numerik pertama yang lebih besar dari atau sama dengan base
. Pengaturan LC_NUMERIC
kategori lokal menentukan pengenalan karakter radix di strSource
; untuk informasi selengkapnya, lihat setlocale
. strtoul
dan wcstoul
gunakan lokal saat ini; _strtoul_l
dan _wcstoul_l
identik kecuali mereka menggunakan lokal yang diteruskan sebagai gantinya. Untuk informasi selengkapnya, lihat Lokal.
Jika endptr
bukan , penunjuk NULL
ke karakter yang menghentikan pemindaian disimpan di lokasi yang ditujukkan oleh endptr
. Jika tidak ada konversi yang dapat dilakukan (tidak ada digit yang valid yang ditemukan atau basis yang tidak valid ditentukan), nilai strSource
disimpan di lokasi yang ditunjukkan oleh endptr
.
wcstoul
adalah versi karakter luas dari strtoul
; argumennya strSource
adalah string karakter lebar. Jika tidak, fungsi-fungsi ini ber perilaku identik.
Secara default, status global fungsi ini dicakup ke aplikasi. Untuk mengubah perilaku ini, lihat Status global di CRT.
Pemetaan rutin teks generik
TCHAR.H Rutin |
_UNICODE dan _MBCS tidak ditentukan |
_MBCS Didefinisikan |
_UNICODE Didefinisikan |
---|---|---|---|
_tcstoul |
strtoul |
strtoul |
wcstoul |
_tcstoul_l |
strtoul_l |
_strtoul_l |
_wcstoul_l |
strtoul
strSource
mengharapkan untuk menunjuk ke string formulir berikut:
[whitespace] [{+ | -}] [0 [{ x | X }]] [digits | letters]
Mungkin whitespace
terdiri dari karakter spasi dan tab, yang diabaikan. digits
adalah satu atau beberapa digit desimal. letters
adalah satu atau beberapa huruf a
melalui z
(atau A
melalui Z
). Karakter pertama yang tidak cocok dengan formulir ini menghentikan pemindaian. Jika base
antara 2 dan 36, maka digunakan sebagai basis angka. Jika base
adalah 0, karakter awal string yang ditujuk oleh strSource
digunakan untuk menentukan dasar. Jika karakter pertama adalah 0 dan karakter kedua bukan x
atau X
, string ditafsirkan sebagai bilangan bulat oktal. Jika karakter pertama adalah '0' dan karakter kedua adalah x
atau X
, string ditafsirkan sebagai bilangan bulat heksadesimal. Jika karakter pertama adalah '1' hingga '9', string ditafsirkan sebagai bilangan bulat desimal. Huruf a
melalui z
(atau A
melalui Z
) diberi nilai 10 hingga 35; hanya huruf yang nilai yang ditetapkan kurang dari base
yang diizinkan. Karakter pertama di luar rentang dasar menghentikan pemindaian. Misalnya, jika base
adalah 0 dan karakter pertama yang dipindai adalah '0', bilangan bulat oktal diasumsikan dan karakter '8' atau '9' akan menghentikan pemindaian. strtoul
memungkinkan awalan tanda plus (+
) atau minus (-
) ; tanda minus terkemuka menunjukkan bahwa nilai pengembalian dinegasikan.
Persyaratan
Rutin | Header yang diperlukan |
---|---|
strtoul |
<stdlib.h> |
wcstoul |
<stdlib.h> atau <wchar.h> |
_strtoul_l |
<stdlib.h> |
_wcstoul_l |
<stdlib.h> atau <wchar.h> |
Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.
Contoh
Lihat contoh untuk strtod
.
Lihat juga
Konversi data
Lokal
localeconv
setlocale
, _wsetlocale
String ke fungsi nilai numerik
strtod
, , _strtod_l
wcstod
,_wcstod_l
strtol
, , wcstol
_strtol_l
,_wcstol_l
atof
, , _atof_l
_wtof
,_wtof_l
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk