Condividi tramite


_strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l

Imposta i caratteri di una stringa con un carattere. Sono disponibili versioni più sicure di queste funzioni; vedere _strset_s, _strset_s_l, _wcsset_s, _wcsset_s_l, _mbsset_s, _mbsset_s_l.

Importante

_mbsset e _mbsset_l non possono essere utilizzate nelle applicazioni eseguite in Windows Runtime.Per ulteriori informazioni, vedere Funzioni CRT non supportate con /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
);

Parametri

  • str
    Stringa con terminazione null da impostare.

  • c
    Impostazione del carattere.

  • locale
    Impostazioni locali da utilizzare.

Valore restituito

Restituisce un puntatore alla stringa modificata.

Note

La funzione _strset imposta tutti i caratteri (tranne per il carattere null di terminazione) di str a c, convertendoli in char. _wcsset e _mbsset_l sono versioni a caratteri estesi e caratteri multibyte di _strset e i tipi di dati degli argomenti e i valori restituiti variano di conseguenza. Altrimenti queste funzioni si comportano in modo identico.

_mbsset convalida i suoi parametri. Se str è un puntatore a null, viene richiamato il gestore di parametro non valido, come descritto in Convalida dei parametri. Se l'esecuzione può continuare,_mbsset ritorna NULL e imposta errno a EINVAL. _strset e _wcsset non convalidano i relativi parametri.

Il valore di output è interessato dall'impostazione dell'impostazione della categoria LC_CTYPE delle impostazioni locali. Vedere setlocale, _wsetlocale per ulteriori informazioni. Le versioni di queste funzioni sono identiche, eccetto una non avente il suffisso _l che usa le impostazioni locali e l'altra che invece possiede il suffisso _l usa i parametri locali passati. Per ulteriori informazioni, vedere Impostazioni locali.

Nota sulla sicurezzaNota sulla sicurezza

Queste funzioni potrebbero essere vulnerabili a rischi di sovraccarico del buffer.I sovraccarichi del buffer possono essere utilizzati per gli attacchi di sistema perché possono causare un'elevazione dei privilegi non autorizzata.Per ulteriori informazioni, vedere Evitare sovraccarichi del buffer.

Mapping di routine su testo generico

Routine TCHAR.H

_UNICODE & _MBCS non definiti

_MBCS definito

_UNICODE definito

_tcsset

_strset

_mbsset

_wcsset

_tcsset_l

_strset_l

_mbsset_l

_wcsset_l

Requisiti

Routine

Intestazione obbligatoria

_strset

<string.h>

_strset_l

<tchar.h>

_wcsset

<string.h> o <wchar.h>

_wcsset_l

<tchar.h>

_mbsset, _mbsset_l

<mbstring.h>

Per ulteriori informazioni sulla compatibilità, vedere Compatibilità.

Esempio

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

Equivalente .NET Framework

Non applicabile. Per chiamare la funzione standard C, utilizzare PInvoke. Per ulteriori informazioni, vedere Esempi di platform invoke.

Vedere anche

Riferimenti

Modifica di stringhe (CRT)

Impostazioni locali

Interpretazione di sequenze di caratteri multibyte

_mbsnbset, _mbsnbset_l

memset, wmemset

strcat, wcscat, _mbscat

strcmp, wcscmp, _mbscmp

strcpy, wcscpy, _mbscpy

_strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l