_strlwr, _wcslwr, _mbslwr, _strlwr_l, _wcslwr_l, _mbslwr_l
Konvertiert eine Zeichenfolge in Kleinbuchstaben. Sicherere Versionen dieser Funktionen sind verfügbar. Informationen dazu finden Sie unter _strlwr_s, _strlwr_s_l, _mbslwr_s, _mbslwr_s_l, _wcslwr_s, _wcslwr_s_l.
Wichtig
_mbslwr und _mbslwr_l können nicht in Anwendungen verwendet werden, die in Windows-Runtime ausgeführt werden.Weitere Informationen finden Sie unter CRT-Funktionen nicht mit /ZW unterstützt.
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
Parameter
str
In Kleinbuchstaben zu konvertierende auf NULL abschließende Zeichenfolge.locale
Das zu verwendende Gebietsschema.
Rückgabewert
Jede dieser Funktionen gibt einen Zeiger auf die konvertierte Zeichenfolge zurück. Da die Änderung an der jeweiligen Stelle ausgeführt wurde, gleicht der zurückgegebene Zeiger dem als das Eingabeargument übergebenen Zeiger. Kein Rückgabewert ist zur Fehleranzeige reserviert.
Hinweise
Die _strlwr -Funktion konvertiert alle Großbuchstaben in str in Kleinbuchstaben, wie durch die LC_CTYPE-Kategorieeinstellung des Gebietsschemas bestimmt. Andere Zeichen sind nicht betroffen. Weitere Informationen zu LC_CTYPE finden Sie unter setlocale. Die Versionen dieser Funktionen ohne das _l-Suffix verwenden das aktuelle Gebietsschema für ihr vom Gebietsschema abhängiges Verhalten; die Versionen mit dem _l -Suffix sind beinahe identisch, verwenden jedoch stattdessen den ihnen übergebenen Gebietsschemaparameter. Weitere Informationen finden Sie unter Locale.
Die Funktionen _wcslwr und _mbslwr sind Breitzeichen- und Multibytezeichenversionen von _strlwr. Das Argument und der Rückgabewert von _wcslwr sind Breitzeichen-Zeichenfolgen, die von _mbslwr sind Multibyte-Zeichenfolgen. Diese drei Funktionen verhalten sich andernfalls identisch.
Wenn str ein NULL-Zeiger ist, wird der Handler für ungültige Parameter aufgerufen, wie in Parametervalidierung beschrieben. Wenn die weitere Ausführung zugelassen wird, geben diese Funktionen die ursprüngliche Zeichenfolge zurück und legen errno auf EINVAL fest.
In C++ haben diese Funktionen Vorlagenüberladungen, mit denen die neueren, sicheren Entsprechungen dieser Funktionen aufgerufen werden. Weitere Informationen finden Sie unter Sichere Vorlagenüberladungen.
Zuordnung generischer Textroutinen
TCHAR.H-Routine |
_UNICODE & _MBCS nicht definiert |
_MBCS definiert |
_UNICODE definiert |
---|---|---|---|
_tcslwr |
_strlwr |
_mbslwr |
_wcslwr |
_tcslwr_l |
_strlwr_l |
_mbslwr_l |
_wcslwr_l |
Anforderungen
Routine |
Erforderlicher Header |
---|---|
_strlwr, _strlwr_l |
<string.h> |
_wcslwr, _wcslwr_l |
<string.h> oder <wchar.h> |
_mbslwr, _mbslwr_l |
<mbstring.h> |
Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Beispiel
// 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 );
}