_mbccpy, _mbccpy_l

Copies a multibyte character from one string to another string. More secure versions of these functions are available; see _mbccpy_s, _mbccpy_s_l.


This API cannot be used in applications that execute in the Windows Runtime. For more information, see CRT functions not supported in Universal Windows Platform apps.


void _mbccpy(
   unsigned char *dest,
   const unsigned char *src
void _mbccpy_l(
   unsigned char *dest,
   const unsigned char *src,
   _locale_t locale


Copy destination.

Multibyte character to copy.

Locale to use.


The _mbccpy function copies one multibyte character from src to dest.

This function validates its parameters. If _mbccpy is passed a null pointer for dest or src, the invalid parameter handler is invoked, as described in Parameter Validation. If execution is allowed to continue, errno is set to EINVAL.

_mbccpy uses the current locale for any locale-dependent behavior. _mbccpy_l is identical to _mbccpy except that _mbccpy_l uses the locale passed in for any locale-dependent behavior. For more information, see Locale.

Security Note Use a null-terminated string. The null-terminated string must not exceed the size of the destination buffer. For more information, see Avoiding Buffer Overruns. Buffer overrun problems are a frequent method of system attack, resulting in an unwarranted elevation of privilege.

By default, this function's global state is scoped to the application. To change this, see Global state in the CRT.

Generic-Text Routine Mappings

Tchar.h routine _UNICODE and _MBCS not defined _MBCS defined _UNICODE defined
_tccpy Maps to macro or inline function _mbccpy Maps to macro or inline function
_tccpy_l n/a _mbccpy_l n/a


Routine Required header
_mbccpy <mbctype.h>
_mbccpy_l <mbctype.h>

For more compatibility information, see Compatibility.

See also

Interpretation of Multibyte-Character Sequences
_mbclen, mblen, _mblen_l