strtoull
, _strtoull_l
, wcstoull
, _wcstoull_l
將字串轉換成 unsigned long long
整數值。
語法
unsigned long long strtoull(
const char *strSource,
char **endptr,
int base
);
unsigned long long _strtoull_l(
const char *strSource,
char **endptr,
int base,
_locale_t locale
);
unsigned long long wcstoull(
const wchar_t *strSource,
wchar_t **endptr,
int base
);
unsigned long long _wcstoull_l(
const wchar_t *strSource,
wchar_t **endptr,
int base,
_locale_t locale
);
參數
strSource
以 Null 終止的待轉換字串。
endptr
停止掃描的字元指標。
base
要使用的數字基底。
locale
要使用的地區設定。
傳回值
若有的話,strtoull
會傳回已轉換的值,或在發生溢位時傳回 ULLONG_MAX
。 如果沒有任何轉換可執行,strtoull
會傳回 0。 wcstoull
傳回類似 strtoull
的值。 如果發生溢位或反向溢位,這兩個函式的 errno
都會設為 ERANGE
。
如需傳回碼的詳細資訊,請參閱 errno
、 _doserrno
_sys_errlist
和 _sys_nerr
。
備註
所有這些函式都會將輸入字串 strSource
轉換成 unsigned long long
整數值。
strtoull
停止在無法辨識為數字一部分的第一個字元讀取字串 strSource
。 它可能是終止的 Null 字元,或者可能是大於或等於 base
的第一個數值字元。 地區設定的類別設定 LC_NUMERIC
會決定 中 strSource
基底字元的辨識;如需詳細資訊,請參閱 。 _wsetlocale
setlocale
strtoull
和 wcstoull
使用目前的地區設定,_strtoull_l
和 _wcstoull_l
除了改用傳入的地區設定之外,其他相同。 如需詳細資訊,請參閱 Locale。
如果 endptr
不是 NULL
,則會將停止掃描的字元指標儲存在 所 endptr
指向的位置。 如果不能執行任何轉換 (找不到任何有效的數字或指定了無效的基底),則 strSource
的值會儲存在 endptr
所指的位置。
wcstoull
是寬字元版本的 strtoull
,其 strSource
引數是寬字元字串。 否則,這些函式的行為相同。
根據預設,此函式的全域狀態會限定于應用程式。 若要變更此行為,請參閱 CRT 中的全域狀態。
泛型文字常式對應
TCHAR.H 常式 | _UNICODE 和 _MBCS 未定義 |
_MBCS 定義 |
_UNICODE 定義 |
---|---|---|---|
_tcstoull |
strtoull |
strtoull |
wcstoull |
_tcstoull_l |
strtoull_l |
_strtoull_l |
_wcstoull_l |
strtoull
需要 strSource
指向格式如下的字串︰
[
whitespace
] [{+
|-
}] [0
[{x
|X
}]] [digits
|letters
]
whitespace
可能包含空格和定位字元,這些字元會被忽略。 digits
是一或多個十進位數。 letters
是一或多個字母 'a' 到 'z' (或 'A' 到 'Z')。 不符合此表單的第一個字元會停止掃描。 如果 base
介於 2 到 36 之間,則會將其作為數位的基底。 如果 base
為 0,則使用由 strSource
指向的字串起始字元來判斷基底。 如果第一個字元是 '0',而第二個字元不是 'x' 或 'X',字串就會解譯為八進位整數。 如果第一個字元為 '0',而第二個字元是 'x' 或 X',則字串會解譯為十六進位整數。 如果第一個字元為 '1' 到 '9',則字串會解譯為十進位整數。 字母 'a' 到 'z' (或 'A' 到 'Z') 被指派值 10 到 35,只允許指派值小於 base
的字母。 基底範圍外的第一個字元會停止掃描。 例如,如果 base
為 0,而第一個掃描到的字元是 '0',則假設為八進位整數,且 '8' 或 '9' 字元會停止掃描。 strtoull
允許加號 (+
) 或減號 (-
) 符號前置詞,前置減號表示傳回值為負數。
需求
常式 | 必要的標頭 |
---|---|
strtoull |
<stdlib.h> |
wcstoull |
<stdlib.h > 或 < wchar.h> |
_strtoull_l |
<stdlib.h> |
_wcstoull_l |
<stdlib.h > 或 < wchar.h> |
如需相容性詳細資訊,請參閱相容性。
範例
請參閱 的 strtod
範例。
另請參閱
資料轉換
地區設定
localeconv
setlocale
, _wsetlocale
字串到數值函式
strtod
, _strtod_l
, wcstod
, _wcstod_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
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應