_strnset_s, _strnset_s_l, _wcsnset_s, _wcsnset_s_l, _mbsnset_s, _mbsnset_s_l

Inizializzare i caratteri di una stringa con un carattere specificato.Queste sono versioni di _strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l con i miglioramenti della sicurezza come descritto in Funzionalità di sicurezza in CRT.

Nota importanteImportante

_mbsnset_s e _mbsnset_s_l non possono essere utilizzati nelle applicazioni eseguite nelle finestre runtime.Per ulteriori informazioni, vedere Funzioni CRT non supportate con /ZW.

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

Parametri

  • str
    Stringa da modificare.

  • numberOfElements
    La dimensione del buffer di str.

  • c
    Impostazione del carattere.

  • count
    Numero di caratteri da impostare.

  • locale
    Impostazioni locali da utilizzare.

Valore restituito

Zero se l'operazione viene completata correttamente, altrimenti un codice di errore.

Queste funzioni convalidano i relativi argomenti.Se str non è una stringa con terminazione null valida o argomento di dimensione è minore o uguale a 0, il gestore non valido di parametro viene richiamato, come descritto in Convalida dei parametri.Se l'esecuzione è consentita per continuare, queste funzioni restituiscono un codice di errore e un set errno al codice di errore.Il codice di errore predefinito è EINVAL se un valore più specifico non viene applicato.

Note

Queste funzioni impostate, al massimo, i primi caratteri di count di str a c.Se count è maggiore delle dimensioni di str, la dimensione di str viene utilizzata al posto di count.Si verifica un errore se count è maggiore di numberOfElements e entrambi questi parametri sono maggiori delle dimensioni di str.

_wcsnset_s e _mbsnset_sdisponibili versioni a caratteri estesi e di caratteri multibyte di _strnset_s.L'argomento stringa di _wcsnset_s è una stringa di caratteri estesi, tale di _mbsnset_s è una stringa con caratteri multibyte di.Altrimenti queste tre funzioni si comportano in modo identico.

Il valore di output è interessato dall'impostazione dell'impostazione di categoria di LC_CTYPEdelle impostazioni locali; vedere setlocale per ulteriori informazioni.Le versioni di queste funzioni senza il suffisso di _l utilizzano le impostazioni locali correnti per questo comportamento dipendente dalle impostazioni locali; le versioni con il suffisso di_l sono identiche ma utilizzano il parametro delle impostazioni locali passato.Per ulteriori informazioni, vedere Impostazioni locali.

La versione di debug di queste funzioni per prima cosa riempiono il buffer con il valore 0xFD.Per disabilitare questo comportamento, utilizzare _CrtSetDebugFillThreshold.

Mapping di routine a Testo generico

TCHAR.H routine

_UNICODE & _MBCS non definiti

_MBCS definito

_UNICODE definito

_tcsnset_s

_strnset_s

_mbsnbset_s

_wcsnset_s

_tcsnset_s_l

_strnset_s_l

_mbsnbset_s_l

_wcsnset_s_l

Requisiti

Routine

Intestazione obbligatoria

_strnset_s

<string.h>

_strnset_s_l

<tchar.h>

_wcsnset_s

<string.h> o <wchar.h>

_wcsnset_s_l

<tchar.h>

_mbsnset_s, _mbsnset_s_l

<mbstring.h>

Per ulteriori informazioni sulla compatibilità, vedere Compatibilità nell'introduzione.

Esempio

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

Equivalente .NET Framework

System::String::Replace

Vedere anche

Riferimenti

Modifica delle stringhe (CRT)

Impostazioni locali

Interpretazione delle sequenze di caratteri multibyte

strcat, wcscat, _mbscat

strcmp, wcscmp, _mbscmp

strcpy, wcscpy, _mbscpy

_strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l