Compartilhar via


_mbsnbcat, _mbsnbcat_l

Acrescenta, no máximo, os primeiros bytes de n de uma cadeia de caracteres multibyte para outra. Versões mais seguras dessas funções estão disponíveis; consulte _mbsnbcat_s, _mbsnbcat_s_l.

Importante

Esta API não pode ser usada em aplicativos que executam no Tempo de Execução do Windows.Para obter mais informações, consulte Funções CRT sem suporte pelo /ZW.

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 com caractere multibyte terminado com Null.

  • src
    Cadeia de caracteres de origem com caractere multibyte terminado com Null.

  • count
    Número de bytes de src a serem acrescentados a dest.

  • locale
    Localidade a ser usada.

Valor de retorno

_mbsnbcat retorna um ponteiro para a cadeia de caracteres de destino. Nenhum valor de retorno é reservado para indicar um erro.

Comentários

A função _mbsnbcat acrescenta, no máximo, os primeiros count bytes de src a dest. Se o byte que precede o caractere nulo em dest é um byte inicial, o byte inicial de src substitui esse byte inicial. Caso contrário, o byte inicial de src substituirá o caractere nulo de terminação de dest. Se um byte nulo aparecer em src antes que os bytes de count sejam acrescentados, o _mbsnbcat acrescenta todos os bytes de src, até o caractere nulo. Se count for maior que o tamanho de src, o tamanho de src será usado no lugar de count. A cadeia de caracteres resultante é finalizada com um caractere nulo. Se a cópia for feita 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 de localidade. Para obter mais informações, consulte setlocale. A versão _mbsnbcat da função usa o local atual para esse comportamento dependente de local; a versão _mbsnbcat_l é idêntica, exceto pelo fato de que ela usa o parâmetro de local transmitido. Para obter mais informações, consulte Localidade.

Observação de segurança Use uma cadeia de caracteres terminada em nulo. A cadeia de caracteres terminadas em nulo não devem exceder o tamanho do buffer de destino. Para obter mais informações, consulte Evitando saturações de buffer.

Se dest ou src for NULL, a função gerará um erro de parâmetro inválido, conforme descrito em Validação do parâmetro. Se o erro for tratado, a função retornará EINVAL e definirá errno como EINVAL.

No C++, essas funções têm as sobrecargas de modelo que invocam as correspondentes seguras mais recentes dessas funções. Para obter mais informações, consulte Sobrecargas de modelo seguras.

Mapeamentos da 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 mais informações sobre compatibilidade, consulte Compatibilidade.

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 chamadas de plataformas.

Consulte também

Referência

Manipulação da cadeia de caracteres (CRT)

_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