Share via


_strset_s, _strset_s_l, _wcsset_s, _wcsset_s_l, _mbsset_s, _mbsset_s_l

conjunto caracteres de uma seqüência de caracteres como um caractere.Essas são sistema autônomo versões de _strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l com aprimoramentos de segurança conforme descrito em Aprimoramentos de segurança no CRT.

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

Parâmetros

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

  • numberOfElements
    O dimensionar do str buffer.

  • c
    Configuração de caractere.

  • locale
    Localidade usar.

Valor de retorno

Zero se for bem-sucedido, caso contrário, um código de erro.

Essas funções validam seus argumentos.If str é um ponteiro nulo, ou o numberOfElements argumento é menor ou igual a 0, ou bloco passado não é terminada por caractere nulo e, em seguida, o manipulador de parâmetro inválido é chamado, conforme descrito em Validação de parâmetro. Se a execução for permitida para continuar, essas funções retornam EINVAL e conjunto errno para EINVAL.

Comentários

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

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.

As versões de depurar dessas funções primeiro preenchem o buffer com 0xFD.Para desabilitar esse comportamento, use _CrtSetDebugFillThreshold.

Mapeamentos de rotina de texto genérica

Rotina TCHAR.H

_UNICODE & _MBCS não definido

_MBCS definido

_UNICODE definido

_tcsset_s

_strset_s

_mbsset_s

_wcsset_s

_tcsset_s_l

_strset_s_l

_mbsset_s_l

_wcsset_s_l

Requisitos

Rotina

Cabeçalho necessário

_strset_s

<string.h>

_strset_s_l

<tchar.h>

_wcsset_s

<string.h> ou <wchar.h>

_wcsset_s_l

<tchar.h>

_mbsset_s, _mbsset_s_l

<mbstring.h>

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

Exemplo

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

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