Compartir a través de


_mbsnbcat, _mbsnbcat_l

Anexa, como máximo, los primeros n bytes de una cadena de caracteres multibyte en otra. Hay disponibles versiones más seguras de estas funciones; vea _mbsnbcat_s, _mbsnbcat_s_l.

Importante

Esta API no se puede usar en aplicaciones que se ejecutan en Windows en tiempo de ejecución.Para obtener más información, vea Funciones de CRT no admitidas con /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
    Cadena de destino de caracteres multibyte terminada en NULL.

  • src
    Cadena de origen de caracteres multibyte terminada en NULL.

  • count
    Número de bytes de src que se van a anexar a dest.

  • locale
    Configuración regional que se va a usar.

Valor devuelto

_mbsnbcat devuelve un puntero a la cadena de destino. No se reserva ningún valor devuelto para indicar un error.

Comentarios

La función _mbsnbcat anexa, como máximo, los primeros count bytes de src a dest. Si el byte que precede inmediatamente al carácter nulo en dest es un byte inicial, byte inicial de src sobrescribe este byte inicial. De lo contrario, el byte inicial de src sobrescribe el carácter nulo de terminación de dest. Si hay un byte null en src antes de que se anexen count bytes, _mbsnbcat anexa todos los bytes de src, hasta el carácter nulo. Si count es mayor que la longitud de src, se usa la longitud de src en lugar de count. La cadena resultante se termina con un carácter nulo. Si la copia tiene lugar entre cadenas que se superponen, el comportamiento es indefinido.

El valor de salida se ve afectado por el valor de la categoría LC_CTYPE de la configuración regional; vea setlocale para obtener más información. La versión _mbsnbcat de esta función usa la configuración regional actual de su comportamiento dependiente de la configuración regional; la versión _mbsnbcat_l es idéntica, salvo que usa el parámetro de configuración regional que se pasa. Para obtener más información, vea Configuración regional.

Nota de seguridad Use una cadena terminada en un valor nulo. El tamaño de la cadena terminada en un valor nulo no debe ser mayor que el del búfer de destino. Para obtener más información, vea Evitar saturaciones del búfer.

Si dest o src es NULL, la función generará un error de parámetro no válido, como se describe en Validación de parámetros. Si se controla el error, la función devuelve EINVAL y establece errno en EINVAL.

En C++, estas funciones tienen sobrecargas de plantilla que invocan los homólogos seguros más recientes de estas funciones. Para obtener más información, vea Sobrecargas de plantilla seguras.

Asignaciones de rutina de texto genérico

Rutina Tchar.h

_UNICODE y _MBCS no definidos

_MBCS definido

_UNICODE definido

_tcsncat

strncat

_mbsnbcat

wcsncat

_tcsncat_l

_strncat_l

_mbsnbcat_l

_wcsncat_l

Requisitos

Rutina

Encabezado necesario

_mbsnbcat

<mbstring.h>

_mbsnbcat_l

<mbstring.h>

Para obtener más información sobre compatibilidad, vea Compatibilidad.

Equivalente en .NET Framework

No es aplicable Para llamar a la función estándar de C, use PInvoke. Para obtener más información, vea Ejemplos de invocación de plataforma.

Vea también

Referencia

Manipulación de cadenas (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