_strupr_s
、、_strupr_s_l
_mbsupr_s
、_mbsupr_s_l
、、_wcsupr_s
、_wcsupr_s_l
使用目前的地區設定或傳入的指定地區設定,將字串轉換成大寫。 這些版本的、 、 、 _mbsupr
、 _wcsupr_l
_mbsupr_l
具有_wcsupr
安全性增強功能,如 CRT 的安全性功能中所述。 _strupr_l
_strupr
重要
在 Windows 執行階段中執行的應用程式中無法使用 _mbsupr_s
和 _mbsupr_s_l
。 如需詳細資訊,請參閱 CRT functions not supported in Universal Windows Platform apps (通用 Windows 平台應用程式中不支援的 CRT 函式)。
語法
errno_t _strupr_s(
char *str,
size_t numberOfElements
);
errno_t _wcsupr_s(
wchar_t * str,
size_t numberOfElements
);
errno_t _strupr_s_l(
char * str,
size_t numberOfElements,
_locale_t locale
);
errno_t _wcsupr_s_l(
wchar_t * str,
size_t numberOfElements,
_locale_t locale
);
errno_t _mbsupr_s(
unsigned char *str,
size_t numberOfElements
);
errno_t _mbsupr_s_l(
unsigned char *str,
size_t numberOfElements,
_locale_t locale
);
template <size_t size>
errno_t _strupr_s(
char (&str)[size]
); // C++ only
template <size_t size>
errno_t _wcsupr_s(
wchar_t (&str)[size]
); // C++ only
template <size_t size>
errno_t _strupr_s_l(
char (&str)[size],
_locale_t locale
); // C++ only
template <size_t size>
errno_t _wcsupr_s_l(
wchar_t (&str)[size],
_locale_t locale
); // C++ only
template <size_t size>
errno_t _mbsupr_s(
unsigned char (&str)[size]
); // C++ only
template <size_t size>
errno_t _mbsupr_s_l(
unsigned char (&str)[size],
_locale_t locale
); // C++ only
參數
str
改為大寫的字串。
numberOfElements
緩衝區的大小。
locale
要使用的地區設定。
傳回值
如果成功,則傳回零;如果失敗,則傳回非零的錯誤碼。
這些函式會驗證它們的參數。 如果 str
是NULL
指標,則會叫用無效的參數處理程式,如參數驗證中所述。 如果允許繼續執行,這些函式會傳回 EINVAL
,並將 errno
設定為 EINVAL
。 如果 numberOfElements
小於字串的長度,函式會傳回 ERANGE
,並將 errno
設定為 ERANGE
。
備註
_strupr_s
函式會就地將 str
中的任何小寫字母轉換成大寫。 _wcsupr_s
是寬字元版本的 _strupr_s
。 _mbsupr_s
是 _strupr_s
的多字元版本。
轉換由地區設定的 LC_CTYPE
分類設定來決定。 其他字元不會受到影響。 如需 的詳細資訊 LC_CTYPE
,請參閱 setlocale
。 這些沒有 _l
字尾的函式版本會使用目前的地區設定;具有 _l
字尾的版本與其相同,只不過它們會改用傳入的地區設定。 如需詳細資訊,請參閱 Locale。
C++ 利用多載樣板簡化了這些函式的使用方式。多載可自動推斷緩衝區長度 (因而不須指定大小引數),也可以將不安全的舊函式自動取代成較新且安全的對應函式。 如需詳細資訊,請參閱安全範本多載。
這些函式的偵錯連結庫版本會先將緩衝區填入0xFE。 若要停用此行為,請使用 _CrtSetDebugFillThreshold
。
根據預設,此函式的全域狀態會限定於應用程式。 若要變更此行為,請參閱 CRT 中的全域狀態。
一般文字常式對應
TCHAR.H 常式 | _UNICODE 和 _MBCS 未定義 |
_MBCS 已定義 |
_UNICODE 已定義 |
---|---|---|---|
_tcsupr_s |
_strupr_s |
_mbsupr_s |
_wcsupr_s |
_tcsupr_s_l |
_strupr_s_l |
_mbsupr_s_l |
_wcsupr_s_l |
需求
常式 | 必要的標頭 |
---|---|
_strupr_s , _strupr_s_l |
<string.h> |
_wcsupr_s 、 、 _wcsupr_s_l 、 _mbsupr_s _mbsupr_s_l |
<string.h> 或 <wchar.h> |
如需相容性詳細資訊,請參閱相容性。
範例
請參閱 、、_strlwr_s_l
、、_wcslwr_s
_mbslwr_s
_mbslwr_s_l
、、 _wcslwr_s_l
的範例_strlwr_s
。
另請參閱
地區設定
多位元組字元序列的解譯
字串操作
_strlwr_s
、、_strlwr_s_l
_mbslwr_s
、_mbslwr_s_l
、、_wcslwr_s
、_wcslwr_s_l