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