Udostępnij za pośrednictwem


_strset_s, _strset_s_l, _wcsset_s, _wcsset_s_l, _mbsset_s, _mbsset_s_l

Ustaw znaki ciągu do danego znaku.Te wersje _strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l mają wzmocnienia zabezpieczeń, jak opisano w Funkcje zabezpieczeń w CRT.

Ważna uwagaWażne

_mbsset_s i _mbsset_s_l nie można używać w aplikacjach korzystających ze środowiska wykonawczego systemu Windows.Aby uzyskać więcej informacji, zobacz Funkcje CRT nieobsługiwane przez /ZW.

errno_t _strset_s(
   char *str,
   size_t numberOfElements,
   int c 
);
errno_t _strset_s_l(
   char *str,
   size_t numberOfElements,
   int c,
   locale_t locale
);
errno_t _wcsset_s(
   wchar_t *str,
   size_t numberOfElements,
   wchar_t c 
);
errno_t *_wcsset_s_l(
   wchar_t *str,
   size_t numberOfElements,
   wchar_t c,
   locale_t locale
);
errno_t _mbsset_s(
   unsigned char *str,
   size_t numberOfElements,
   unsigned int c 
);
errno_t _mbsset_s_l(
   unsigned char *str,
   size_t numberOfElements,
   unsigned int c,
   _locale_t locale
);

Parametry

  • str
    Ciąg zakończony wartością null do ustawienia.

  • numberOfElements
    Rozmiar buforu str.

  • c
    Ustawienie znaków.

  • locale
    Ustawienia regionalne do użycia.

Wartość zwracana

Zero, jeśli operacja się powiedzie; w przeciwnym razie, kod błędu.

Te funkcje sprawdzają poprawność swoich argumentów.Jeśli str jest wskaźnikiem typu null lub argument numberOfElements jest mniejszy niż lub równy 0, lub przekazany w blok nie jest zakończony znakiem null, wówczas procedura obsługi nieprawidłowego parametru zostanie wywołana, zgodnie z opisem w Sprawdzanie poprawności parametru.Jeśli wykonanie może być kontynuowane, te funkcje zwracają EINVAL i ustawiają errno jako EINVAL.

Uwagi

_strset_s funkcja ustawia wszystkie znaki z str do c (przekonwertowane na char), z wyjątkiem znaku kończącego null._wcsset_s i _mbsset_s są wersjami znaków dwubajtowych i znaków wielobajtowych _strset_s.Typy danych argumentów i zwracanych wartości różnią się odpowiednio.W innych przypadkach funkcje te zachowują się identycznie.

Wartość wyjściowa jest zależna od konfiguracji ustawień kategorii LC_CTYPE ustawień regionalnych; zobacz setlocale, aby uzyskać więcej informacji.Wersje tych funkcji, które nie mają przyrostka _l używają bieżących ustawień regionalnych dla wszelkich zachowań zależnych od ustawień lokalnych; wersje, które mają przyrostek _l są identyczne, z tą różnicą, że w zamian korzystają z przekazanego parametru ustawień regionalnych.Aby uzyskać więcej informacji, zobacz Regionalne.

Wersje debugowania tych funkcji najpierw wypełniają bufor 0xFD.Aby wyłączyć to zachowanie, użyj _CrtSetDebugFillThreshold.

Rutynowe mapowania zwykłego tekstu

Procedura Tchar.h

_UNICODE & _MBCS nie zdefiniowano

_MBCS zdefiniowano

_UNICODE zdefiniowany

_tcsset_s

_strset_s

_mbsset_s

_wcsset_s

_tcsset_s_l

_strset_s_l

_mbsset_s_l

_wcsset_s_l

Wymagania

Procedura

Wymagany nagłówek

_strset_s

<Ciąg>

_strset_s_l

<tchar.h>

_wcsset_s

<ciągo.h> lub <wchar.h>

_wcsset_s_l

<tchar.h>

_mbsset_s, _mbsset_s_l

<mbCiąg.h>

Dodatkowe informacje o zgodności – zobacz: Zgodność.

Przykład

// crt_strset_s.c
#include <string.h>
#include <stdio.h>
#include <stdlib.h>

int main( void )
{
   char string[] = "Fill the string with something.";
   printf( "Before: %s\n", string );
   _strset_s( string, _countof(string), '*' );
   printf( "After:  %s\n", string );
}
  

Odpowiednik w programie .NET Framework

Nie dotyczy. Aby wywołać standardową funkcję C, należy użyć PInvoke. Aby uzyskać więcej informacji, zobacz Przykłady wywoływania platformy.

Zobacz też

Informacje

Manipulowanie ciągami (CRT)

Regionalne

Interpretacja wielobajtowych sekwencji znaków

_mbsnbset, _mbsnbset_l

memset, wmemset

strcat, wcscat, _mbscat

strcmp, wcscmp, _mbscmp

strcpy, wcscpy, _mbscpy

_strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l