Compartilhar via


_strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l

conjunto caracteres de uma seqüência de caracteres como um caractere.Versões mais seguras dessas funções estão disponível; consulte _strset_s, _strset_s_l, _wcsset_s, _wcsset_s_l, _mbsset_s, _mbsset_s_l.

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

Parâmetros

  • str
    Seqüência terminada por caractere nulo a ser definido.

  • c
    Configuração de caractere.

  • locale
    Localidade usar.

Valor de retorno

Retorna um ponteiro para a seqüência alterada.

Comentários

The _strset função define todos os caracteres de str para c (convertido em char), exceto o caractere nulo de terminação. _wcsset e _mbsset_lsão versões de caractere largo e caracteres de multibyte de _strset. Os tipos de dados de argumentos e valores de retorno variam de acordo.Essas funções se comportam exatamente caso contrário.

_mbsset valida os parâmetros. If str é um ponteiro nulo, o manipulador de parâmetro inválido é chamado, conforme descrito em Validação de parâmetro. Se a execução for permitida para continuar, _mbsset Retorna NULL e conjuntos errno para EINVAL. _strset e _wcsset não validam seus parâmetros.

O valor de saída é afetado pela configuração do LC_CTYPE categoria de configuração da localidade; consulte setlocale para obter mais informações.As versões dessas funções sem o _l sufixo use a localidade corrente para esse comportamento dependente de localidade; as versões com o _l sufixo são idênticas exceto que usarem o parâmetro de localidade passado em vez disso. Para obter mais informações, consulte Localidade.

Observação de segurança    Essas funções incorrer em uma ameaça potencial colocada um problema de saturação de buffer.Problemas de saturação de buffer são um método de ataque do sistema, resultando em uma elevação do privilégio unwarranted freqüente.Para obter mais informações, consulte Evitar saturações de buffer.

Mapeamentos de rotina de texto genérica

Rotina TCHAR.H

_UNICODE & _MBCS não definido

_MBCS definido

_UNICODE definido

_tcsset

_strset

_mbsset

_wcsset

_tcsset_l

_strset_l

_mbsset_l

_wcsset_l

Requisitos

Rotina

Cabeçalho necessário

_strset

<string.h>

_strset_l

<tchar.h>

_wcsset

<string.h> ou <wchar.h>

_wcsset_l

<tchar.h>

_mbsset, _mbsset_l

<mbstring.h>

Para obter informações adicionais compatibilidade, consulte Compatibilidade na introdução.

Exemplo

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

Before: Fill the string with something. After:  *******************************

Equivalente do NET Framework

Não aplicável. Para telefonar a função C padrão, use PInvoke. Para obter mais informações, consulte Exemplos de invocação de plataforma.

Consulte também

Referência

Manipulação de seqüência de caracteres (CRT)

Localidade

Interpretação de seqüências de caractere multibyte

_mbsnbset, _mbsnbset_l

memset, wmemset

strcat wcscat, _mbscat

strcmp wcscmp, _mbscmp

strcpy wcscpy, _mbscpy

_strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l