Partilhar via


_strset_s, _strset_s_l, _wcsset_s, _wcsset_s_l, _mbsset_s, _mbsset_s_l

Definir caracteres de uma cadeia de caracteres em um caractere.Essas são versões de _strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l com aprimoramentos de segurança conforme descrito em Recursos de segurança no CRT.

Observação importanteImportante

_mbsset_s e _mbsset_s_l não podem ser usados em aplicativos executados em Tempo de Execução do Windows.Para obter mais informações, consulte Funções de CRT não suportadas com /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 );

Parâmetros

  • str
    Cadeia de caracteres NULL- finalizada a ser definida.

  • numberOfElements
    O tamanho do buffer de str .

  • c
    Configuração de caracteres.

  • locale
    A localidade usar.

Valor de retorno

Zero se com êxito, se não um código de erro.

Essas funções validam seus argumentos.Se str é um ponteiro zero, ou o argumento de numberOfElements é menor ou igual a 0, ou o bloco passado NULL- não é finalizado, então o manipulador inválido do parâmetro é invocado, como descrito em Validação de parâmetro.Se a execução é permitida continuar, essas funções EINVAL de retorno e errnodefina a EINVAL.

Comentários

A função de _strset_s define todos os caracteres de str a c (convertido em char), exceto o caractere de terminação zero._wcsset_s e _mbsset_s são versões de largo- caractere e o caractere multibyte- de _strset_s.Os tipos de dados dos argumentos e valores de retorno variam de acordo.Essas funções se comportam de forma idêntica.

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

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

Mapeamentos da rotina de Genérico- texto

Rotina de TCHAR.H

_UNICODE & _MBCS não definidos

_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 informações extras de compatibilidade Compatibilidade na introdução, consulte.

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

Equivalência do .NET Framework

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

Consulte também

Referência

Manipulação de cadeia de caracteres (CRT)

Localidade

Interpretação de seqüências de caracteres Multibyte

_mbsnbset, _mbsnbset_l

memset, wmemset

strcat, wcscat, _mbscat

strcmp, wcscmp, _mbscmp

strcpy, wcscpy, _mbscpy

_strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l