_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ż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
Interpretacja wielobajtowych sekwencji znaków
_strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l