_strlwr_s, _strlwr_s_l, _mbslwr_s, _mbslwr_s_l, _wcslwr_s, _wcslwr_s_l
Converter uma cadeia de caracteres em minúsculas, usando a localidade atual ou um objeto de localidade passada em.Essas são versões de _strlwr, _wcslwr, _mbslwr, _strlwr_l, _wcslwr_l, _mbslwr_l com aprimoramentos de segurança conforme descrito em Recursos de segurança no CRT.
Importante |
---|
_mbslwr_s e _mbslwr_s_l não podem ser usados em aplicativos executados em Tempo de Execução do Windows.Para obter mais informações, consulte Funções de CRT não suportadas com /ZW. |
errno_t _strlwr_s( char *str, size_t numberOfElements ); errno_t _strlwr_s_l( char *str, size_t numberOfElements, _locale_t locale ); errno_t _mbslwr_s( unsigned char *str, size_t numberOfElements ); errno_t _mbslwr_s_l( unsigned char *str, size_t numberOfElements, _locale_t locale ); errno_t _wcslwr_s( wchar_t *str, size_t numberOfElements ); errno_t _wcslwr_s_l( wchar_t *str, size_t numberOfElements, _locale_t locale ); template <size_t size> errno_t _strlwr_s( char (&str)[size] ); // C++ only template <size_t size> errno_t _strlwr_s_l( char (&str)[size], _locale_t locale ); // C++ only template <size_t size> errno_t _mbslwr_s( unsigned char (&str)[size] ); // C++ only template <size_t size> errno_t _mbslwr_s_l( unsigned char (&str)[size], _locale_t locale ); // C++ only template <size_t size> errno_t _wcslwr_s( wchar_t (&str)[size] ); // C++ only template <size_t size> errno_t _wcslwr_s_l( wchar_t (&str)[size], _locale_t locale ); // C++ only
Parâmetros
str
Cadeia de caracteres NULL- finalizada a ser convertido em minúsculas.numberOfElements
Tamanho do buffer.locale
A localidade a ser usada.
Valor de retorno
Zero se com êxito; um código de erro diferente de zero em caso de falha.
Essas funções validam seus parâmetros.Se str não é uma cadeia de caracteres NULL- finalizada válido, o manipulador inválido do parâmetro é invocado, como descrito em Validação de parâmetro .Se a execução é permitida continuar, funções EINVAL de retorno e errno defina a EINVAL.Se numberOfElements é menor que o comprimento da cadeia de caracteres, funções e também EINVAL de retorno de errno defina a EINVAL.
Comentários
A função de _strlwr_s converte, no lugar, todas as letras maiúsculas em str em minúsculas._mbslwr_s é uma versão de caracteres em bytes de _strlwr_s._wcslwr_s é uma versão de largo- caractere de _strlwr_s.
O valor de saída é afetado pela configuração da categoria de LC_CTYPE de localidade; consulte setlocale para mais informações.As versões dessas funções sem o sufixo de _l usam a localidade atual para este comportamento de são dependentes; as versões com o sufixo de _l são idênticas exceto que usam o parâmetro de localidade passado em vez disso.Para obter mais informações, consulte Localidade.
Em C++, usar essas funções é simplificada por sobrecargas de modelo; as sobrecargas podem interpretar o tamanho do buffer (automaticamente que elimina a necessidade de especificar um argumento de tamanho) e podem automaticamente substituir mais antigos, não funções de segurança mais recentes, com suas contrapartes seguros.Para obter mais informações, consulte Proteger Overloads de modelo.
As versões de depuração dessas funções preenchem primeiro o buffer com 0xFD.Para desativar esse comportamento, use _CrtSetDebugFillThreshold.
Mapeamentos da rotina de Genérico- texto
Rotina de TCHAR.H |
_UNICODE & _MBCS não definidos |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_tcslwr_s |
_strlwr_s |
_mbslwr_s |
_wcslwr_s |
_tcslwr_s_l |
_strlwr_s_l |
_mbslwr_s_l |
_wcslwr_s_l |
Requisitos
Rotina |
Cabeçalho necessário |
---|---|
_strlwr_s, _strlwr_s_l |
<string.h> |
_mbslwr_s, _mbslwr_s_l |
<mbstring.h> |
_wcslwr_s, _wcslwr_s_l |
<string.h> ou <wchar.h> |
Para informações extras de compatibilidade Compatibilidade na introdução, consulte.
Exemplo
// crt_strlwr_s.cpp
// This program uses _strlwr_s and _strupr_s to create
// uppercase and lowercase copies of a mixed-case string.
//
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
int main()
{
char str[] = "The String to End All Strings!";
char *copy1, *copy2;
errno_t err;
err = _strlwr_s( copy1 = _strdup(str), strlen(str) + 1);
err = _strupr_s( copy2 = _strdup(str), strlen(str) + 1);
printf( "Mixed: %s\n", str );
printf( "Lower: %s\n", copy1 );
printf( "Upper: %s\n", copy2 );
free( copy1 );
free( copy2 );
return 0;
}
Equivalência do .NET Framework
Consulte também
Referência
Manipulação de cadeia de caracteres (CRT)
Interpretação de seqüências de caracteres Multibyte
_strupr_s, _strupr_s_l, _mbsupr_s, _mbsupr_s_l, _wcsupr_s, _wcsupr_s_l