_strlwr, _wcslwr, _mbslwr, _strlwr_l, _wcslwr_l, _mbslwr_l
Convierte una cadena en minúsculas.Versiones más seguras de estas funciones están disponibles; vea _strlwr_s, _strlwr_s_l, _mbslwr_s, _mbslwr_s_l, _wcslwr_s, _wcslwr_s_l.
Importante |
---|
_mbslwr y _mbslwr_l no se pueden utilizar en las aplicaciones que se ejecutan en tiempo de ejecución de Windows.Para obtener más información, vea Funciones CRT no compatibles con /ZW. |
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
Cadena terminada en null a convertir en minúsculas.locale
La configuración regional a utilizar.
Valor devuelto
Cada una de estas funciones devuelve un puntero a la cadena convertida.Dado que la modificación se hace en su lugar, el puntero devuelto es el mismo que el puntero se pasa como argumento de entrada.No se reserva ningún valor devuelto para indicar un error.
Comentarios
La función de _strlwr convierte cualquier letra mayúscula en str a minúsculas determinado por el valor de categoría de LC_CTYPE de la configuración regional.Otros caracteres no resultan afectados.Para obtener más información sobre LC_CTYPE, vea setlocale.Las versiones de estas funciones sin el sufijo de _l utilizan la configuración regional actual para su comportamiento configuración regional-dependiente; las versiones con el sufijo de _l son idénticas salvo que utilizan la configuración regional pasado en su lugar.Para obtener más información, vea Configuración regional.
Las funciones de _wcslwr y de _mbslwr son versiones de caracteres anchos y de multibyte- carácter de _strlwr.El argumento y el valor devuelto de _wcslwr son cadenas de caracteres; las de _mbslwr son cadenas de multibyte- carácter.Estas tres funciones se comportan exactamente igual de otra manera.
Si str es un puntero de NULL, se invoca el controlador no válido de parámetro, tal y como se describe en Validación de parámetros.Si la ejecución puede continuar, estas funciones devuelven la cadena y el conjunto original errno a EINVAL.
En C++, estas funciones tienen sobrecargas de plantilla que se invoque según el nuevo, garantiza que sus homólogos de estas funciones.Para obtener más información, vea Sobrecargas de plantilla de seguridad.
Asignaciones de la rutina de Genérico- texto
Rutina de TCHAR.H |
_UNICODE y _MBCS no definidos |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_tcslwr |
_strlwr |
_mbslwr |
_wcslwr |
_tcslwr_l |
_strlwr_l |
_mbslwr_l |
_wcslwr_l |
Requisitos
Rutina |
Encabezado necesario |
---|---|
_strlwr, _strlwr_l |
<string.h> |
_wcslwr, _wcslwr_l |
<string.h> o <wchar.h> |
_mbslwr, _mbslwr_l |
<mbstring.h> |
Para obtener información adicional de compatibilidad, vea Compatibilidad en la Introducción.
Ejemplo
// 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 );
}