_strlwr, _wcslwr, _mbslwr, _strlwr_l, _wcslwr_l, _mbslwr_l
Convertit une chaîne en minuscules. Des versions plus sécurisées de ces fonctions sont disponibles ; consultez _strlwr_s, _strlwr_s_l, _mbslwr_s, _mbslwr_s_l, _wcslwr_s, _wcslwr_s_l.
Important
_mbslwr et _mbslwr_l ne peuvent pas être utilisées dans les applications qui s'exécutent dans le Windows Runtime.Pour plus d'informations, consultez Fonctions CRT non prises en charge avec /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
Paramètres
str
Chaîne de caractères terminée par le caractère NULL à convertir en minuscules.locale
Paramètres régionaux à utiliser.
Valeur de retour
Chacune de ces fonctions retourne un pointeur vers la chaîne convertie. La modification étant effectuée en place, le pointeur retourné est identique au pointeur passé comme argument d'entrée. Aucune valeur de retour n'est réservée pour indiquer une erreur.
Notes
La fonction _strlwr convertit toutes les lettres majuscules dans str en minuscules comme spécifié par le paramètre de catégorie LC_CTYPE des paramètres régionaux. Les autres caractères ne sont pas affectés. Pour plus d'informations sur LC_CTYPE, consultez setlocale. Les versions de ces fonctions sans le suffixe _l utilisent les paramètres régionaux pour leur comportement dépendant des paramètres régionaux ; les versions avec le suffixe _l sont identiques, sauf qu'elles utilisent à la place les paramètres régionaux passés. Pour plus d'informations, consultez Paramètres régionaux.
Les fonctions _wcslwr et _mbslwr sont à caractère larges et à caractères multi-octets de _strlwr. L'argument et la valeur de retour de _wcslwr sont des chaînes à caractères larges ; ceux de _mbslwr sont des chaînes de caractères multi-octets. Ces trois fonctions se comportent sinon de façon identique.
Si str est un pointeur NULL, le gestionnaire de paramètres non valides est appelé, comme décrit dans Validation de paramètre. Si l'exécution est autorisée à se poursuivre, ces fonctions retournent la chaine originale et donnent à errno la valeur EINVAL.
En C++, ces fonctions ont des surcharges de modèle qui appellent les équivalents plus récents et sécurisés de ces fonctions. Pour plus d'informations, consultez Sécuriser les surcharges de modèle.
Mappages de routines de texte générique
Routine TCHAR.H |
_UNICODE & _MBCS non définis |
_MBCS défini |
_UNICODE défini |
---|---|---|---|
_tcslwr |
_strlwr |
_mbslwr |
_wcslwr |
_tcslwr_l |
_strlwr_l |
_mbslwr_l |
_wcslwr_l |
Configuration requise
Routine |
En-tête requis |
---|---|
_strlwr, _strlwr_l |
<string.h> |
_wcslwr, _wcslwr_l |
<string.h> ou <wchar.h> |
_mbslwr, _mbslwr_l |
<mbstring.h> |
Pour plus d'informations sur la compatibilité, consultez Compatibilité.
Exemple
// 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 );
}