_mbsnbcpy, _mbsnbcpy_l

Copia n bytes de una cadena en una cadena de destino. Versiones más seguras de estas funciones son disponible- vea _mbsnbcpy_s, _mbsnbcpy_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 * _mbsnbcpy(
   unsigned char * strDest,
   const unsigned char * strSource,
   size_t count
);
unsigned char * _mbsnbcpy_l(
   unsigned char * strDest,
   const unsigned char * strSource,
   size_t count,
   _locale_t locale
);
template <size_t size>
unsigned char * _mbsnbcpy(
   unsigned char (&strDest)[size],
   const unsigned char * strSource,
   size_t count
); // C++ only
template <size_t size>
unsigned char * _mbsnbcpy_l(
   unsigned char (&strDest)[size],
   const unsigned char * strSource,
   size_t count,
   _locale_t locale
); // C++ only

Parámetros

  • strDest
    Destino para que la cadena de caracteres se copie.

  • strSource
    Cadena de caracteres que se va a copiar.

  • count
    Número de bytes que se van a copiar.

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

Valor devuelto

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

Comentarios

La función _mbsnbcpy copia count bytes de strSource en strDest. Si count supera el tamaño de strDest o cadenas de origen y de destino se superponen, el comportamiento de _mbsnbcpy es indefinido.

Si strSource o strDest es un puntero NULL, esta función invoca el controlador no válido del parámetro tal como se describe en Validación de parámetros. Si la ejecución puede continuar, la función devuelve NULL y establece en errno en EINVAL.

El valor de salida se ve afectado por el valor de la categoría LC_CTYPE de la configuración regional; vea setlocale, _wsetlocale para obtener más información. Las versiones de estas funciones son idénticas, excepto en que las que no tienen el uso del sufijo de _l la configuración regional actual y versiones que tienen el sufijo de _l en su lugar utilice el parámetro de configuración regional que se pasa. Para obtener más información, vea Configuración regional.

Nota de seguridadNota sobre la seguridad

Estas funciones pueden ser vulnerables a amenazas de saturación del búfer.Las saturaciones del búfer se pueden utilizar para ejecutar código arbitrario del atacante, que puede producir una elevación de privilegios injustificable y el sistema.Para obtener más información, vea Evitar saturaciones del búfer.

En C++, estas funciones tienen sobrecargas de plantilla que se invoque los más recientes, más seguros homólogos 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

_tcsncpy

strncpy

_mbsnbcpy

wcsncpy

_tcsncpy_l

_strncpy_l

_mbsnbcp_l

_wcsncpy_l

Requisitos

Rutina

Encabezado necesario

_mbsnbcpy

<mbstring.h>

_mbsnbcpy_l

<mbstring.h>

Para obtener más información de 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)

_mbsnbcat, _mbsnbcat_l

_mbsnbcmp, _mbsnbcmp_l

_strncnt, _wcsncnt, _mbsnbcnt, _mbsnbcnt_l, _mbsnccnt, _mbsnccnt_l

_mbsnbset, _mbsnbset_l

strncpy, _strncpy_l, wcsncpy, _wcsncpy_l, _mbsncpy, _mbsncpy_l