Freigeben über


_strnset_s, _strnset_s_l, _wcsnset_s, _wcsnset_s_l, _mbsnset_s, _mbsnset_s_l

Initialisiert Zeichen einer Zeichenfolge auf ein angegebenes Zeichen. Diese Versionen von _strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l enthalten Sicherheitserweiterungen wie unter Sicherheitsfunktionen in der CRT beschrieben.

Wichtig

_mbsnset_s und _mbsnset_s_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.

errno_t _strnset_s(
   char *str,
   size_t numberOfElements,
   int c,
   size_t count 
);
errno_t _strnset_s_l(
   char *str,
   size_t numberOfElements,
   int c,
   size_t count,
   locale_t locale
);
errno_t _wcsnset_s(
   wchar_t *str,
   size_t numberOfElements,
   wchar_t c,
   size_t count 
);
errno_t _wcsnset_s_l(
   wchar_t *str,
   size_t numberOfElements,
   wchar_t c,
   size_t count,
   _locale_t locale
);
errno_t _mbsnset_s(
   unsigned char *str,
   size_t numberOfElements,
   unsigned int c,
   size_t count 
);
errno_t _mbsnset_s_l(
   unsigned char *str,
   size_t numberOfElements,
   unsigned int c,
   size_t count,
   _locale_t locale
);

Parameter

  • str
    Zu ändernde Zeichenfolge.

  • numberOfElements
    Die Größe des str-Puffers.

  • c
    Zeicheneinstellung.

  • count
    Zahl der festzulegenden Zeichen.

  • locale
    Zu verwendendes Gebietsschema.

Rückgabewert

Null, wenn erfolgreich, andernfalls ein Fehlercode.

Diese Funktionen überprüfen ihre Argumente. Wenn str keine gültige auf NULL abschließende Zeichenfolge ist oder das Größenargument kleiner oder gleich 0 ist, wird der Handler für ungültige Parameter aufgerufen, wie in Parametervalidierung beschrieben. Wenn die weitere Ausführung zugelassen wird, geben diese Funktionen einem Fehlercode zurück und legen errno auf diesen Fehlercode fest. Der Standardfehlercode ist EINVAL, wenn kein spezifischerer Wert zur Anwendung kommt.

Hinweise

Diese Funktionen legen höchstens die ersten count-Zeichen von str auf c fest. Wenn count größer als die Größe von str ist, wird die Größe von str anstelle von count verwendet. Ein Fehler tritt auf, wenn count größer als numberOfElements ist, und diese beiden Parameter größer als die Größe von str sind.

_wcsnset_s und _mbsnset_s sind Breitzeichen- und Multibytezeichenversionen von _strnset_s. Das Zeichenfolgenargument von _wcsnset_s ist eine Zeichenfolge mit Breitzeichen; die von _mbsnset_s ist eine Mehrbyte-Zeichenfolge. Diese drei Funktionen verhalten sich andernfalls identisch.

Die Ausgabewert ist von der Einstellung der LC_CTYPE -Kategorieeinstellung des Gebietsschemas betroffen. Weitere Informationen finden Sie unter setlocale. Die Versionen dieser Funktionen ohne das _l-Suffix verwenden das aktuelle Gebietsschema für dieses vom Gebietsschema abhängige Verhalten. Die Versionen mit dem _l-Suffix sind beinahe identisch, verwenden jedoch stattdessen den ihnen übergebenen Gebietsschemaparameter. Weitere Informationen finden Sie unter Locale.

Die Debugversionen dieser Funktionen füllen zunächst den Puffer mit "0xFD" auf. Mit _CrtSetDebugFillThreshold deaktivieren Sie dieses Verhalten.

Zuordnung generischer Textroutinen

TCHAR.H-Routine

_UNICODE & _MBCS nicht definiert

_MBCS definiert

_UNICODE definiert

_tcsnset_s

_strnset_s

_mbsnbset_s

_wcsnset_s

_tcsnset_s_l

_strnset_s_l

_mbsnbset_s_l

_wcsnset_s_l

Anforderungen

Routine

Erforderlicher Header

_strnset_s

<string.h>

_strnset_s_l

<tchar.h>

_wcsnset_s

<string.h> oder <wchar.h>

_wcsnset_s_l

<tchar.h>

_mbsnset_s, _mbsnset_s_l

<mbstring.h>

Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.

Beispiel

// crt_strnset_s.c
#include <string.h>
#include <stdio.h>

int main( void )
{
   char string[15] = "This is a test";
   /* Set not more than 4 characters of string to be *'s */
   printf( "Before: %s\n", string );
   _strnset_s( string, sizeof(string), '*', 4 );
   printf( "After:  %s\n", string );
}
  

.NET Framework-Entsprechung

System::String::Replace

Siehe auch

Referenz

Zeichenfolgenbearbeitung (CRT)

Locale

Interpretation von Mehrbytezeichensequenzen

strcat, wcscat, _mbscat

strcmp, wcscmp, _mbscmp

strcpy, wcscpy, _mbscpy

_strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l