_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)
Interpretação de seqüências de caractere multibyte
_strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l