Share via


_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.

Retornar valor

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_CTYPEo , consulte setlocale. As versões dessas funções sem o sufixo usam a localidade atual para seu comportamento dependente da localidade, as versões com o sufixo _l_l são idênticas, exceto que elas usam a localidade passada em vez disso. 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 de retorno de são cadeias de _wcslwr caracteres largos. O argumento e o valor de retorno 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âmetros inválido será chamado, 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, consulte Estado global na 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