_strlwr_s, _strlwr_s_l, _mbslwr_s, _mbslwr_s_l, _wcslwr_s, _wcslwr_s_l
Konvertieren einer Zeichenfolge in Kleinbuchstaben, unter Verwendung des aktuellen Gebietsschemas oder eines Gebietsschemaobjekts, die übergeben werden.Diese sind Versionen von _strlwr, _wcslwr, _mbslwr, _strlwr_l, _wcslwr_l, _mbslwr_l mit Sicherheitserweiterungen, wie in Sicherheitsfeatures im CRT beschrieben.
Wichtig |
---|
_mbslwr_s und _mbslwr_s_l können in Anwendungen nicht verwendet werden, die in der Windows Runtime ausführen.Weitere Informationen finden Sie unter CRT-Funktionen unterstützt nicht mit /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
Parameter
str
Auf NULL endende in Kleinbuchstaben konvertiert, Zeichenfolge.numberOfElements
Größe des Puffers.locale
Das Gebietsschema zu verwenden.
Rückgabewert
Null erfolgreich, wenn ein Fehlercode ungleich 0 (null) auf Fehler.
Diese Funktionen überprüfen ihre Parameter.Wenn str keine gültige auf NULL endende Zeichenfolge ist, wird der ungültige Parameterhandler aufgerufen, wie in Parametervalidierung beschrieben.Wenn die Ausführung zulässig ist, um fortzufahren, geben die Funktionen EINVAL zurück und legen errno auf EINVAL fest.Wenn numberOfElements kleiner als die Länge der Zeichenfolge ist, geben die Funktionen auch EINVAL zurück und legen errno auf EINVAL fest.
Hinweise
Die Funktion, _strlwr_s gesorgt, alle Großbuchstaben in str in Kleinbuchstaben._mbslwr_s ist eine MULTIByte-Zeichenversion von _strlwr_s._wcslwr_s ist eine Breitzeichen-Version von _strlwr_s.
Der Ausgabewert wird durch die Einstellung der LC_CTYPE Kategorieneinstellung des Gebietsschemas betroffen; setlocale finden Sie weitere Informationen.Die Versionen dieser Funktionen ohne das _l Suffix verwenden das aktuelle Gebietsschema für dieses Verhalten abhängig; die Versionen mit dem _l Suffix sind identisch, allerdings verwenden den Gebietsschemaparameter, der in stattdessen übergeben wird.Weitere Informationen finden Sie unter Gebietsschema.
In C++ mithilfe dieser Funktionen wird durch Vorlagenüberladungen vereinfacht; die Überladungen können die Pufferlänge (die Anforderung automatisch beseitigend ableiten, ein Größenargument anzugeben) und können die älteren, nicht-sicheren Funktionen durch ihre späteren, sicheren Entsprechungen automatisch ersetzen.Weitere Informationen finden Sie unter Speichern Sie Vorlagen-Überladungen.
Die Debugversionen dieser Funktionen füllen zuerst den Puffer mit den Wert aus.Um dieses Verhalten zu deaktivieren, verwenden Sie _CrtSetDebugFillThreshold.
Zuordnung generische Textroutinen
TCHAR.H-Routine |
_UNICODE & _MBCS nicht definiert. |
_MBCS definiert |
_UNICODE definiert |
---|---|---|---|
_tcslwr_s |
_strlwr_s |
_mbslwr_s |
_wcslwr_s |
_tcslwr_s_l |
_strlwr_s_l |
_mbslwr_s_l |
_wcslwr_s_l |
Anforderungen
Routine |
Erforderlicher Header |
---|---|
_strlwr_s, _strlwr_s_l |
<string.h> |
_mbslwr_s, _mbslwr_s_l |
<mbstring.h> |
_wcslwr_s, _wcslwr_s_l |
<string.h> oder <wchar.h> |
So zusätzlicher Kompatibilitätsinformation finden Sie unter Kompatibilität in der Einführung.
Beispiel
// 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;
}
.NET Framework-Entsprechung
Siehe auch
Referenz
Zeichenfolgenbearbeitung (CRT)
Interpretation von Mehrbytezeichen-Sequenzen
_strupr_s, _strupr_s_l, _mbsupr_s, _mbsupr_s_l, _wcsupr_s, _wcsupr_s_l