Sdílet prostřednictvím


_strset_s, _strset_s_l, _wcsset_s, _wcsset_s_l, _mbsset_s, _mbsset_s_l

Nastavuje znaky řetězce na znak.Tyto verze _strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l mají rozšíření zabezpečení popsaná v tématu Funkce zabezpečení v CRT.

Důležitá poznámkaDůležité

_mbsset_s a _mbsset_s_l nelze použít v aplikacích, které jsou spouštěny v modulu Windows Runtime.Další informace naleznete v tématu CRT funkce nejsou podporovány s /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
    Řetězec zakončený null pro nastavení.

  • numberOfElements
    Velikost vyrovnávací paměti str.

  • c
    Nastavení znaků.

  • locale
    Použité národní prostředí.

Vrácená hodnota

Nula v případě úspěchu; jinak kód chyby.

Tyto funkce ověřují své argumenty.Pokud str je ukazatel s hodnotou null, nebo argument numberOfElements je menší nebo roven 0, nebo blok předaný není zakončen hodnotou null, pak je vyvolána obslužná rutina neplatného parametru, jak je popsáno v Ověření parametru.Pokud provádění může pokračovat, vrátí tyto funkce EINVAL a nastaví errno na EINVAL.

Poznámky

Funkce _strset_s nastaví všechny znaky proměnné str na c (převedeno na char) s výjimkou ukončujícího znaku null._wcsset_s a _mbsset_s jsou širokoznaká verze a vícebajtová znaková verze _strset_s.Datové typy argumentů a vrácené hodnoty se příslušně liší.Tyto funkce se chovají jinak identicky.

Výstupní hodnota je ovlivněna nastavením kategorie LC_CTYPE národního prostředí; viz setlocale pro další informace.Verze těchto funkcí bez přípony _l používají aktuální národní prostředí pro toto chování závislé na národním prostředí. Verze s příponou _l jsou stejné s tím rozdílem, že používají předaný parametr národního prostředí.Další informace naleznete v tématu Národní prostředí.

Ladicí verze těchto funkcí nejprve naplní vyrovnávací paměť hodnotou 0xFD.Chcete-li zakázat toto chování, použijte _CrtSetDebugFillThreshold.

Rutinní mapování obecného textu

Rutina TCHAR.H

_UNICODE & _MBCS není definováno

_MBCS definováno

_UNICODE definováno

_tcsset_s

_strset_s

_mbsset_s

_wcsset_s

_tcsset_s_l

_strset_s_l

_mbsset_s_l

_wcsset_s_l

Požadavky

Rutina

Požadované záhlaví

_strset_s

<string.h>

_strset_s_l

<tchar.h>

_wcsset_s

<string.h> nebo <wchar.h>

_wcsset_s_l

<tchar.h>

_mbsset_s, _mbsset_s_l

<mbstring.h>

Další informace o kompatibilitě naleznete v tématu Kompatibilita.

Příklad

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

Ekvivalent v rozhraní .NET Framework

Nelze použít. Pokud chcete volat standardní funkci jazyka C, použijte PInvoke. Další informace naleznete v tématu Příklady vyvolání platformy.

Viz také

Referenční dokumentace

Zacházení s řetězci (CRT)

Národní prostředí

Výklad sekvencí vícebajtových znaků

_mbsnbset, _mbsnbset_l

memset, wmemset

strcat, wcscat, _mbscat

strcmp, wcscmp, _mbscmp

strcpy, wcscpy, _mbscpy

_strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l