_strlwr
, _wcslwr
, _mbslwr
, _strlwr_l
, _wcslwr_l
, , _mbslwr_l
Converte uma cadeia de caracteres em letras minúsculas. Estão disponíveis versões mais seguras dessas funções. Para obter informações, confira _strlwr_s
, _strlwr_s_l
, _mbslwr_s
, _mbslwr_s_l
, _wcslwr_s
, _wcslwr_s_l
.
Importante
_mbslwr
e _mbslwr_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
char *_strlwr(
char * str
);
wchar_t *_wcslwr(
wchar_t * str
);
unsigned char *_mbslwr(
unsigned char * str
);
char *_strlwr_l(
char * str,
_locale_t locale
);
wchar_t *_wcslwr_l(
wchar_t * str,
_locale_t locale
);
unsigned char *_mbslwr_l(
unsigned char * str,
_locale_t locale
);
template <size_t size>
char *_strlwr(
char (&str)[size]
); // C++ only
template <size_t size>
wchar_t *_wcslwr(
wchar_t (&str)[size]
); // C++ only
template <size_t size>
unsigned char *_mbslwr(
unsigned char (&str)[size]
); // C++ only
template <size_t size>
char *_strlwr_l(
char (&str)[size],
_locale_t locale
); // C++ only
template <size_t size>
wchar_t *_wcslwr_l(
wchar_t (&str)[size],
_locale_t locale
); // C++ only
template <size_t size>
unsigned char *_mbslwr_l(
unsigned char (&str)[size],
_locale_t locale
); // C++ only
Parâmetros
str
Sequência de terminação nula para converter em minúsculas.
locale
A localidade a ser usada.
Valor retornado
Cada uma dessas funções retorna um ponteiro para a cadeia de caracteres convertida. Como a modificação é feita in-loco, o ponteiro retornado é o mesmo que o ponteiro passado como o argumento de entrada. Nenhum valor retornado é reservado para indicar um erro.
Comentários
A função _strlwr
converte todas as letras maiúsculas no str
em minúsculas conforme determinado pela LC_CTYPE
configuração de categoria 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 _l
sufixo usam a localidade atual para seu comportamento dependente de localidade; as versões com o _l
sufixo são idênticas, exceto que usam a localidade passada. Para obter mais informações, consulte Localidade.
As funções _wcslwr
e _mbslwr
são versões de caractere largo e de caracteres multibyte de _strlwr
. O argumento e o valor retornado de _wcslwr
são cadeias de caracteres largos. O argumento e o valor retornado de são cadeias de _mbslwr
caracteres multibyte. Caso contrário, essas três funções se comportam de forma idêntica.
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 a cadeia de caracteres original e definirão errno
como EINVAL
.
No C++, essas funções têm sobrecargas de modelo que invocam os equivalentes mais novos e seguros dessas funções. Para obter mais informações, consulte Sobrecargas de modelo seguras.
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 |
---|---|---|---|
_tcslwr |
_strlwr |
_mbslwr |
_wcslwr |
_tcslwr_l |
_strlwr_l |
_mbslwr_l |
_wcslwr_l |
Requisitos
Rotina | Cabeçalho necessário |
---|---|
_strlwr , _strlwr_l |
<string.h> |
_wcslwr , _wcslwr_l |
<string.h> ou <wchar.h> |
_mbslwr , _mbslwr_l |
<mbstring.h> |
Para obter informações sobre compatibilidade, consulte Compatibilidade.
Exemplo
// crt_strlwr.c
// compile with: /W3
// This program uses _strlwr and _strupr to create
// uppercase and lowercase copies of a mixed-case string.
#include <string.h>
#include <stdio.h>
int main( void )
{
char string[100] = "The String to End All Strings!";
char * copy1 = _strdup( string ); // make two copies
char * copy2 = _strdup( string );
_strlwr( copy1 ); // C4996
// Note: _strlwr is deprecated; consider using _strlwr_s instead
_strupr( copy2 ); // C4996
// Note: _strupr is deprecated; consider using _strupr_s instead
printf( "Mixed: %s\n", string );
printf( "Lower: %s\n", copy1 );
printf( "Upper: %s\n", copy2 );
free( copy1 );
free( copy2 );
}
Mixed: The String to End All Strings!
Lower: the string to end all strings!
Upper: THE STRING TO END ALL STRINGS!
Confira também
Manipulação de cadeia de caracteres
Localidade
_strupr
, _strupr_l
, _mbsupr
, _mbsupr_l
, _wcsupr_l
, , _wcsupr