_strupr、_strupr_l、_mbsupr、_mbsupr_l、_wcsupr_l、_wcsupr
将字符串转换为大写字母。 有关这些函数的更多安全版本,请参见 _strupr_s、_strupr_s_l、_mbsupr_s、_mbsupr_s_l、_wcsupr_s、_wcsupr_s_l。
重要
_mbsupr 和 _mbsupr_l 不能在 Windows 运行时执行的应用程序中使用。有关详细信息,请参见 CRT functions not supported with /ZW(CRT 函数不支持使用/ZW)。
char *_strupr(
char *str
);
wchar_t *_wcsupr(
wchar_t *str
);
unsigned char *_mbsupr(
unsigned char *str
);
char *_strupr_l(
char *str,
_locale_t locale
);
wchar_t *_wcsupr_l(
wchar_t *str,
_locale_t locale
);
unsigned char *_mbsupr_l(
unsigned char *str,
_locale_t locale
);
template <size_t size>
char *_strupr(
char (&str)[size]
); // C++ only
template <size_t size>
wchar_t *_wcsupr(
wchar_t (&str)[size]
); // C++ only
template <size_t size>
unsigned char *_mbsupr(
unsigned char (&str)[size]
); // C++ only
template <size_t size>
char *_strupr_l(
char (&str)[size],
_locale_t locale
); // C++ only
template <size_t size>
wchar_t *_wcsupr_l(
wchar_t (&str)[size],
_locale_t locale
); // C++ only
template <size_t size>
unsigned char *_mbsupr_l(
unsigned char (&str)[size],
_locale_t locale
); // C++ only
参数
str
大写的字符串。locale
要使用的区域设置。
返回值
返回指向修改后的字符串的指针。 由于修改就地完成,返回的指针与作为输入参数传递的指针相同。 没有保留任何返回值以指示错误。
备注
_strupr 函数转换,例如,在 str 的所有大写字母转换为小写。 转换取决于 LC_CTYPE 类别设置区域设置。 其他字符不受影响。 有关LC_CTYPE的更多信息, 请参见 setlocale. 这些不带 _l 后缀的函数使用当前区域设置;;带有 _l 后缀的版本相同,只不过它们使用的区域设置不同。 有关详细信息,请参阅区域设置。
_wcsupr 和 _mbsupr 是宽字符,属于 _strupr 的多节字字符版本。 参数和 _wcsupr 的返回值是宽字符字符串;_mbsupr 的参数和返回值为多字节字符字符串。 否则这三个函数否则具有相同行为。
如果 str 是空指针,则会调用无效参数处理程序,如 参数验证 所述。 如果允许执行继续,则这些函数返回原始字符串并将 errno 设置为 EINVAL 。
在 C++ 中,这些函数具有模板重载,以调用这些函数的更新、更安全副本。 有关详细信息,请参阅安全模板重载。
一般文本例程映射
TCHAR.H 例程 |
未定义 _UNICODE & _MBCS |
已定义 _MBCS |
已定义 _UNICODE |
---|---|---|---|
_tcsupr |
_strupr |
_mbsupr |
_wcsupr |
_tcsupr_l |
_strupr_l |
_mbsupr_l |
_wcsupr_l |
要求
例程 |
必需的标头 |
---|---|
_strupr, _strupr_l |
<string.h> |
_wcsupr, _wcsupr_l |
<string.h> 或 <wchar.h> |
_mbsupr, _mbsupr_l |
<mbstring.h> |
有关兼容性的更多信息,请参见兼容性。
示例
请参见将字符串转换成浮点数示例。