_mbsnbcat_s, _mbsnbcat_s_l
Acrescenta, no máximo, a primeira n bytes de uma seqüência de caractere de multibyte para outro. Essas são sistema autônomo versões de _mbsnbcat, _mbsnbcat_l com aprimoramentos de segurança conforme descrito em Aprimoramentos de segurança no CRT.
errno_t _mbsnbcat_s(
unsigned char *dest,
size_t sizeInBytes,
const unsigned char *src,
size_t count
);
errno_t _mbsnbcat_s_l(
unsigned char *dest,
size_t sizeInBytes,
const unsigned char *src,
size_t count,
_locale_t locale
);
template <size_t size>
errno_t _mbsnbcat_s(
unsigned char (&dest)[size],
const unsigned char *src,
size_t count
); // C++ only
template <size_t size>
errno_t _mbsnbcat_s_l(
unsigned char (&dest)[size],
const unsigned char *src,
size_t count,
_locale_t locale
); // C++ only
Parâmetros
dest
Seqüência de caracteres terminada com caractere nulo destino caracteres multibyte.sizeInBytes
dimensionar do dest buffer em bytes.src
Seqüência de caracteres terminada com caractere nulo de fonte de caracteres multibyte.Count
Número de bytes de src Para acrescentar a dest.locale
Localidade usar.
Valor de retorno
Zero se for bem-sucedida; caso contrário, um código de erro.
Condições de erro
Dest |
sizeInBytes |
src |
Valor de Retorno |
---|---|---|---|
NULL |
any |
any |
EINVAL |
Qualquer |
<= 0 |
any |
EINVAL |
Qualquer |
any |
NULL |
EINVAL |
Se ocorrer qualquer uma das condições de erro acima, a função gera um erro de parâmetro inválido sistema autônomo descrito em Validação de parâmetro. Se o erro é manipulado, a função retornará EINVAL e conjuntos errno para EINVAL.
Comentários
The _mbsnbcat_s função anexa, no máximo, o primeiro count bytes de src para dest. Se o byte imediatamente antes do caractere nulo em dest é um byte inicial, o byte inicial de src substitui esse byte inicial. Caso contrário, o byte inicial de src substitui o caractere nulo de terminação de dest. Se aparecer um byte nulo em src antes de count bytes são acrescentados, _mbsnbcat_s acrescenta todos os bytes de src, até o caractere nulo. If count é maior do que o comprimento de src, o tamanho de src usado no lugar de count. A seqüência de caracteres resultante é finalizada com um caractere nulo.Se copiar ocorre entre cadeias de caracteres que se sobrepõem, o comportamento é indefinido.
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. For more information, see Localidade.
No C++, usando essas funções é simplificado pelo modelo sobrecargas; sobrecargas de podem inferir o comprimento do buffer automaticamente (eliminando a necessidade de especificar um argumento de dimensionar) e eles podem substituir automaticamente funções não seguras, mais antigas, com suas contrapartes mais recentes e seguras.For more information, see Proteger overloads de modelo.
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 e _MBCS não definido |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_tcsncat |
_mbsnbcat_s |
||
_tcsncat_s_l |
_strncat_s_l |
_mbsnbcat_s_l |
_wcsncat_s_l |
Requisitos
Rotina |
Cabeçalho necessário |
---|---|
_mbsnbcat_s |
<mbstring.h> |
_mbsnbcat_s_l |
<mbstring.h> |
Para obter mais informações de compatibilidade, consulte Compatibilidade na introdução.
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)
_mbsnbcnt, _mbsnbcnt_l, _mbsnccnt, _mbsnccnt_l, _strncnt, _wcsncnt
strncat, _strncat_l, wcsncat, wcsncat_l, _mbsncat _mbsncat_l
strncat_s, _strncat_s_l, wcsncat_s, _wcsncat_s_l, _mbsncat_s, _mbsncat_s_l