Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Acrescenta, no máximo, os primeiros n bytes de uma cadeia de caracteres multibyte a outra cadeia de caracteres. Versões mais seguras dessas funções estão disponíveis; confira _mbsnbcat_s, _mbsnbcat_s_l.
Importante
Esta API não pode ser usada em aplicativos executados no Windows Runtime. Para obter mais informações, confira Funções do CRT sem suporte em aplicativos da Plataforma Universal do Windows.
Sintaxe
unsigned char *_mbsnbcat(
unsigned char *dest,
const unsigned char *src,
size_t count
);
unsigned char *_mbsnbcat_l(
unsigned char *dest,
const unsigned char *src,
size_t count,
_locale_t locale
);
template <size_t size>
unsigned char *_mbsnbcat(
unsigned char (&dest)[size],
const unsigned char *src,
size_t count
); // C++ only
template <size_t size>
unsigned char *_mbsnbcat_l(
unsigned char (&dest)[size],
const unsigned char *src,
size_t count,
_locale_t locale
); // C++ only
Parâmetros
dest
Cadeia de caracteres de destino de caractere multibyte terminada em nulo.
src
Cadeia de caracteres de origem de caractere multibyte terminada em nulo.
count
Número de bytes do src para acrescentar a dest.
locale
Localidade a usar.
Valor retornado
_mbsnbcat retorna um ponteiro para a cadeia de caracteres de destino. Nenhum valor retornado é reservado para indicar um erro.
Comentários
A função _mbsnbcat acrescenta, no máximo, os primeiros count bytes de src para dest. Se o byte imediatamente antes do caractere nulo em dest for um byte inicial, o byte inicial de src substituirá 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 no src antes de count bytes serem acrescentados, _mbsnbcat acrescentará todos os bytes de src, até o caractere nulo. Se count for maior que o comprimento de src, o comprimento de src será usado no lugar de count. A cadeia de caracteres resultante é terminada com um caractere nulo. Se ocorrer cópia entre cadeias de caracteres que se sobrepõem, o comportamento será indefinido.
O valor de saída é afetado pela configuração da categoria LC_CTYPE da localidade. Para obter mais informações, consulte setlocale. A versão _mbsnbcat da função usa a localidade atual desse comportamento dependente da localidade. A versão _mbsnbcat_l é idêntica, exceto por usar o parâmetro de localidade passado em seu lugar. Para obter mais informações, consulte Localidade.
Observação de Segurança Use uma cadeia de caracteres terminada em nulo. A cadeia de caracteres terminada em nulo não deve exceder o tamanho do buffer de destino. Para obter mais informações, confira Como evitar sobrecargas de buffer.
Se dest ou src for NULL, a função gerará um erro de parâmetro inválido, conforme descrito em Validação de parâmetro. Se o erro for tratado, a função retornará EINVAL e definirá errno como EINVAL.
No C++, essas funções têm sobrecargas de modelo que invocam os equivalentes mais novos e seguros dessas funções. Para obter mais informações, consulte Sobrecargas de modelo seguras.
Por padrão, o estado global dessa função tem como escopo o aplicativo. Para alterar esse comportamento, confira Estado global no CRT.
Mapeamentos de rotina de texto genérico
| Rotina Tchar.h | _UNICODE e _MBCS não definidos |
_MBCS definido |
_UNICODE definido |
|---|---|---|---|
_tcsncat |
strncat |
_mbsnbcat |
wcsncat |
_tcsncat_l |
_strncat_l |
_mbsnbcat_l |
_wcsncat_l |
Requisitos
| Rotina | Cabeçalho necessário |
|---|---|
_mbsnbcat |
<mbstring.h> |
_mbsnbcat_l |
<mbstring.h> |
Para obter informações sobre compatibilidade, consulte Compatibilidade.
Confira também
Manipulação de cadeia de caracteres
_mbsnbcmp, _mbsnbcmp_l
_strncnt, _wcsncnt, _mbsnbcnt, _mbsnbcnt_l, _mbsnccnt, , _mbsnccnt_l
_mbsnbcpy, _mbsnbcpy_l
_mbsnbicmp, _mbsnbicmp_l
_mbsnbset, _mbsnbset_l
strncat, _strncat_l, wcsncat, _wcsncat_l, _mbsncat, , _mbsncat_l
_mbsnbcat_s, _mbsnbcat_s_l