_strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l
Legt Zeichen einer Zeichenfolge auf ein Zeichen fest. Sicherere Versionen dieser Funktionen sind verfügbar. Informationen dazu finden Sie unter _strset_s, _strset_s_l, _wcsset_s, _wcsset_s_l, _mbsset_s, _mbsset_s_l.
Wichtig
_mbsset und _mbsset_l können in Anwendungen, die in Windows-Runtime ausgeführt werden, nicht verwendet werden.Weitere Informationen finden Sie unter CRT-Funktionen nicht mit /ZW unterstützt.
char *_strset(
char *str,
int c
);
char *_strset_l(
char *str,
int c,
locale_t locale
);
wchar_t *_wcsset(
wchar_t *str,
wchar_t c
);
wchar_t *_wcsset_l(
wchar_t *str,
wchar_t c,
locale_t locale
);
unsigned char *_mbsset(
unsigned char *str,
unsigned int c
);
unsigned char *_mbsset_l(
unsigned char *str,
unsigned int c,
_locale_t locale
);
Parameter
str
Festzulegende mit NULL endende Zeichenfolge.c
Zeicheneinstellung.locale
Zu verwendendes Gebietsschema.
Rückgabewert
Gibt einen Zeiger zur geänderten Zeichenfolge zurück.
Hinweise
Die _strset-Funktion legt alle Zeichen (mit Ausnahme des auf NULL endenden Zeichens) von str auf c, in char konvertiert, fest. _wcsset und _mbsset_l sind Breitzeichen- und Multibytezeichenversionen von _strset, und die Datentypen der Argumente und Rückgabewerte unterscheiden sich entsprechend. Anderenfalls verhalten sich diese Funktionen identisch.
_mbsset überprüft die eigenen Parameter. 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, gibt _mbssetNULL zurück und legt errno auf EINVAL fest. _strset und _wcsset überprüfen ihre Parameter nicht.
Der Ausgabewert ist von der LC_CTYPE-Kategorieneinstellung des Gebietsschemas betroffen; weitere Informationen finden Sie unter setlocale, _wsetlocale. Die Versionen dieser Funktionen sind nahezu identisch, außer dass diejenigen ohne das _l-Suffix das aktuelle Gebietsschema verwenden, und diejenigen mit _l-Suffix den übergebenen Gebietsschemaparameter. Weitere Informationen finden Sie unter Locale.
Sicherheitshinweis |
---|
Diese Funktionen sind möglicherweise für Pufferüberlaufrisiken anfällig.Pufferüberläufe können für Systemangriffe eingesetzt werden, da sie zu einer unbefugten Ausweitung der Berechtigungen führen.Weitere Informationen finden Sie unter Vermeiden von Pufferüberläufen. |
Zuordnung generischer Textroutinen
TCHAR.H-Routine |
_UNICODE & _MBCS nicht definiert |
_MBCS definiert |
_UNICODE definiert |
---|---|---|---|
_tcsset |
_strset |
_mbsset |
_wcsset |
_tcsset_l |
_strset_l |
_mbsset_l |
_wcsset_l |
Anforderungen
Routine |
Erforderlicher Header |
---|---|
_strset |
<string.h> |
_strset_l |
<tchar.h> |
_wcsset |
<string.h> oder <wchar.h> |
_wcsset_l |
<tchar.h> |
_mbsset, _mbsset_l |
<mbstring.h> |
Zusätzliche Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Beispiel
// crt_strset.c
// compile with: /W3
#include <string.h>
#include <stdio.h>
int main( void )
{
char string[] = "Fill the string with something.";
printf( "Before: %s\n", string );
_strset( string, '*' ); // C4996
// Note: _strset is deprecated; consider using _strset_s instead
printf( "After: %s\n", string );
}
.NET Framework-Entsprechung
Nicht zutreffend. Mit PInvoke rufen Sie die Standard-C-Funktion auf. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.
Siehe auch
Referenz
Zeichenfolgenbearbeitung (CRT)
Interpretation von Mehrbytezeichensequenzen
_strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l