_strupr_s
, _strupr_s_l
, _mbsupr_s
, _mbsupr_s_l
, _wcsupr_s
, , _wcsupr_s_l
Converte uma cadeia de caracteres em maiúsculas, usando a localidade atual ou uma localidade especificada passada. Essas versões do , _strupr_l
, , _mbsupr_l
_mbsupr
, _wcsupr_l
, _wcsupr
têm aprimoramentos de _strupr
segurança, conforme descrito em Recursos de segurança no CRT.
Importante
_mbsupr_s
e _mbsupr_s_l
não podem ser usados em aplicativos executados no Windows Runtime. Para obter mais informações, confira Funções do CRT sem suporte em aplicativos da Plataforma Universal do Windows.
Sintaxe
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
Parâmetros
str
Cadeia de caracteres a ser colocada em maiúsculas.
numberOfElements
O tamanho do buffer .
locale
A localidade a ser usada.
Valor retornado
Zero se tiver êxito; um código de erro diferente de zero em caso de falha.
Essas funções validam seus parâmetros. Se str
for um NULL
ponteiro, o manipulador de parâmetro inválido será invocado, conforme descrito em Validação de parâmetro. Se a execução tiver permissão para continuar, essas funções retornarão EINVAL
e definirão errno
como EINVAL
. Se numberOfElements
for menor que o tamanho da cadeia de caracteres, as funções também retornarão ERANGE
e definirão errno
como ERANGE
.
Comentários
A função _strupr_s
converte, in-loco, cada letra minúscula em str
em maiúsculas. _wcsupr_s
é a versão de caracteres largos do _strupr_s
. _mbsupr_s
é a versão de caractere multibyte de _strupr_s
.
A conversão é determinada pela configuração de categoria LC_CTYPE
da localidade. Outros personagens não são afetados. Para obter mais informações sobre LC_CTYPE
o , consulte setlocale
. As versões dessas funções sem o sufixo _l
usam a localidade atual; as versões com o sufixo _l
são idênticas, exceto por usarem a localidade passada. Para obter mais informações, consulte Localidade.
Em C++, o uso dessas funções é simplificado pelas sobrecargas de modelo; as sobrecargas podem inferir o tamanho do buffer automaticamente (eliminando a necessidade de especificar um argumento de tamanho) e podem substituir automaticamente funções mais antigas e não seguras por suas equivalentes mais recentes e seguras. Para obter mais informações, consulte Sobrecargas de modelo seguras.
As versões de biblioteca de depuração dessas funções preenchem o buffer com 0xFE. Para desabilitar esse comportamento, use _CrtSetDebugFillThreshold
.
Por padrão, o estado global dessa função tem como escopo o aplicativo. Para alterar esse comportamento, confira Estado global no CRT.
Mapeamentos de rotina de texto genérico
Rotina TCHAR.H | _UNICODE e _MBCS não definidos |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_tcsupr_s |
_strupr_s |
_mbsupr_s |
_wcsupr_s |
_tcsupr_s_l |
_strupr_s_l |
_mbsupr_s_l |
_wcsupr_s_l |
Requisitos
Rotina | Cabeçalho necessário |
---|---|
_strupr_s , _strupr_s_l |
<string.h> |
_wcsupr_s , _wcsupr_s_l , _mbsupr_s , _mbsupr_s_l |
<string.h> ou <wchar.h> |
Para obter informações sobre compatibilidade, consulte Compatibilidade.
Exemplo
Veja o exemplo para _strlwr_s
, _strlwr_s_l
, _mbslwr_s
, _mbslwr_s_l
, _wcslwr_s
, _wcslwr_s_l
.
Confira também
Localidade
Interpretação de sequências de caracteres multibyte
Manipulação de cadeia de caracteres
_strlwr_s
, _strlwr_s_l
, _mbslwr_s
, _mbslwr_s_l
, _wcslwr_s
, , _wcslwr_s_l