Udostępnij za pośrednictwem


_strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l

Ustaw znaki ciągu do danego znaku.Bardziej bezpieczne wersje tych funkcji są dostępne w _strset_s, _strset_s_l, _wcsset_s, _wcsset_s_l, _mbsset_s, _mbsset_s_l.

Ważna uwagaWażne

_mbsset i _mbsset_l nie można używać w aplikacjach korzystających ze Środowisko wykonawcze systemu Windows.Aby uzyskać więcej informacji, zobacz Funkcje CRT nieobsługiwane przez /ZW.

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
);

Parametry

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

  • c
    Ustawienie znaków.

  • locale
    Ustawienia regionalne do użycia.

Wartość zwracana

Zwraca wskaźnik do zmienionego ciągu.

Uwagi

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

_mbsset sprawdza poprawność parametrów.Jeśli str jest pustym wskaźnikiem, zostanie wywołana procedura obsługi nieprawidłowego parametru, zgodnie z opisem w Sprawdzanie poprawności parametru.Jeśli wykonanie może być kontynuowane,_mbsset zwraca NULL i ustawia errno jako EINVAL._strset i _wcsset nie sprawdza poprawności ich parametrów.

Wartość wyjściowa jest zależna od konfiguracji ustawień kategorii LC_CTYPE ustawień regionalnych; zobacz setlocale, _wsetlocaleaby uzyskać więcej informacji.Wersje tych funkcji są identyczne, z tą różnicą, że te, które nie mają przyrostka _l używają bieżących ustawień regionalnych, natomiast te, które mają przyrostek _l używają parametru ustawień regionalnych, który jest przekazywany.Aby uzyskać więcej informacji, zobacz Regionalne.

Uwaga dotycząca zabezpieczeńUwaga dotycząca zabezpieczeń

Funkcje te mogą być narażone na zagrożenia przepełnienia buforu.Przekroczenie buforu może służyć do ataków systemu, ponieważ mogą one spowodować nieuzasadnione podniesienie uprawnień.Aby uzyskać więcej informacji, zobacz unikanie przekroczenia buforu.

Rutynowe mapowania zwykłego tekstu

Procedura Tchar.h

_UNICODE & _MBCS nie zdefiniowano

_MBCS zdefiniowano

_UNICODE zdefiniowany

_tcsset

_strset

_mbsset

_wcsset

_tcsset_l

_strset_l

_mbsset_l

_wcsset_l

Wymagania

Procedura

Wymagany nagłówek

_strset

<Ciąg>

_strset_l

<tchar.h>

_wcsset

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

_wcsset_l

<tchar.h>

_mbsset, _mbsset_l

<mbCiąg.h>

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

Przykład

// 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 );
}
  

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łań 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