_mbsnbcat_s, _mbsnbcat_s_l

 

Para obtener la documentación más reciente de Visual Studio 2017 RC, consulte Documentación de Visual Studio 2017 RC.

Anexa a una cadena de caracteres multibyte, como máximo, los primeros bytes n de otra cadena de caracteres multibyte. Estas son versiones de _mbsnbcat, _mbsnbcat_l que tienen mejoras de seguridad, como se describe en características de seguridad de CRT.

System_CAPS_ICON_important.jpg Importante

Esta API no se puede usar en aplicaciones que se ejecutan en Windows en tiempo de ejecución. Para más información, vea Funciones de CRT no admitidas con /ZW.

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
Cadena de destino de caracteres multibyte terminada en NULL.

sizeInBytes
Tamaño del búfer dest en bytes.

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.

Cero si es correcto; en caso contrario, código de error.

Condiciones de error

DestsizeInBytessrcValor devuelto
NULLcualquieracualquieraEINVAL
Cualquiera<= 0cualquieraEINVAL
CualquieracualquieraNULLEINVAL

Si alguna de las condiciones de error se produce, la función genera un error de parámetro no válido, como se describe en validación del parámetro. Si se controla el error, la función devuelve EINVAL y establece errno en EINVAL.

La función _mbsnbcat_s anexa a dest, como máximo, los primeros bytes count de src. Si el byte que precede inmediatamente al carácter nulo en dest es un byte inicial, lo sobrescribe el byte inicial de src. De lo contrario, el byte inicial de src sobrescribe el carácter nulo de terminación de dest. Si hay un byte nulo en src antes de que se anexen count bytes, _mbsnbcat_s 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 LC_CTYPE configuración de categoría de la configuración regional; vea setlocale, _wsetlocale para obtener más información. Las versiones de estas funciones son idénticas, salvo que las que no tienen el sufijo _l usan la configuración regional actual y las que tienen el sufijo _l usan el parámetro de configuración regional que se pasa. Para obtener más información, vea Locale.

En C++, el uso de estas funciones se simplifica con las sobrecargas de plantilla; las sobrecargas pueden inferir automáticamente la longitud de búfer, lo que elimina la necesidad de especificar un argumento de tamaño, y pueden usar automáticamente funciones más recientes y seguras para reemplazar las funciones anteriores no seguras. Para obtener más información, consulta Secure Template Overloads.

Las versiones de depuración de estas funciones rellenan primero el búfer con 0xFD. Para deshabilitar este comportamiento, use _CrtSetDebugFillThreshold.

Asignaciones de rutina de texto genérico

Rutina Tchar.h_UNICODE y _MBCS no definidos_MBCS definido_UNICODE definido
_tcsncatstrncat_mbsnbcat_swcsncat
_tcsncat_s_l_strncat_s_l_mbsnbcat_s_l_wcsncat_s_l
RutinaEncabezado necesario
_mbsnbcat_s<mbstring.h>
_mbsnbcat_s_l<mbstring.h>

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

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.

Manipulación de cadenas
_mbsnbcmp, _mbsnbcmp_l
_strncnt, _wcsncnt, _mbsnbcnt, _mbsnbcnt_l, _mbsnccnt, _mbsnccnt_l
_mbsnbcpy, _mbsnbcpy_l
_mbsnbcpy_s, _mbsnbcpy_s_l
_mbsnbset, _mbsnbset_l
strncat, _strncat_l, wcsncat, _wcsncat_l, _mbsncat, _mbsncat_l
strncat_s, _strncat_s_l, wcsncat_s, _wcsncat_s_l, _mbsncat_s, _mbsncat_s_l

Mostrar: