_mbsnbcat_s, _mbsnbcat_s_l
Дополнения в многобайтовой символьной строки, по крайней мере, первые n байтов другой строки многобайтовой кодировки.Эти версии _mbsnbcat, _mbsnbcat_l, имеющие расширения безопасности, как описано в разделе Средства безопасности в CRT.
Важно |
---|
Этот API нельзя использовать в приложениях, выполняемых в Среда выполнения Windows.Дополнительные сведения см. в разделе Функции CRT не поддерживаются при /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
Параметры
dest
Завершенная объединения строки назначения многобайтовой кодировки.sizeInBytes
Размер буфера dest в байтах.src
Объединения завершенной строка источника многобайтовой кодировки.Count
Число байтов из src, добавляемый в dest.locale
Языковой стандарт, который необходимо использовать.
Возвращаемое значение
Ноль при успешном; в противном случае код ошибки.
Условия возникновения ошибки
Dest |
sizeInBytes |
src |
Возвращаемое значение |
---|---|---|---|
NULL |
любое значение |
любое значение |
EINVAL |
Any |
<= 0 |
любое значение |
EINVAL |
Any |
любое значение |
NULL |
EINVAL |
Если все условия возникает ошибка, то функция возвращает ошибку недопустимого параметра, как описано в разделе Проверка параметров.Если ошибка обработана, функция EINVAL возвращает и задает для errno значение EINVAL.
Заметки
Функция _mbsnbcat_s добавляет в dest, по крайней мере, первые count байтов src.Если байт, непосредственно предшествующего нуль-символ в dest старшего байта, он перезаписывается исходные байтом src.В противном случае начальный байт src перезапишет конечное нуль-символ dest.Если NULL байт отображается в src до того, как байты count добавляются, _mbsnbcat_s добавляет все байтов из src, до нуля-символа.Если count больше, чем длина src, то длина src используется вместо count.Результирующая строка, нулем-символом.Если происходит копирование между строками, которые перекрываются, расширения функциональности не определено.
Выходное значение зависеть на параметром параметра категории LC_CTYPE языкового стандарта; дополнительные сведения см. в разделе setlocale, _wsetlocale.Версии этих функций идентичны, за исключением того, что один, не имеющие помощью суффикса _l текущий языковой стандарт и один, имеют суффикс _l вместо этого использовать параметры языкового стандарта, который передается в.Для получения дополнительной информации см. Языковой стандарт.
В C, C-++ использование этих функций непосредственной перегруженными шаблона; перегруженные могут определить длину буфера автоматически и, таким образом, чтобы исключить необходимость указать аргумент размера, и они могут автоматически их использования новой, более безопасными функции заменять старые, менее безопасной функции.Для получения дополнительной информации см. Предоставляйте перегруженный шаблона.
Отладочные версии этих функций сначала заполняют буфер значением 0xFD.Для отключения данного поведения используйте _CrtSetDebugFillThreshold.
Универсальное текстовое сопоставление функций
Подпрограмма TCHAR.H |
Не указаны _UNICODE и _MBCS |
определенные _MBCS |
Определение _UNICODE |
---|---|---|---|
_tcsncat |
_mbsnbcat_s |
||
_tcsncat_s_l |
_strncat_s_l |
_mbsnbcat_s_l |
_wcsncat_s_l |
Требования
Функция |
Требуемый заголовок |
---|---|
_mbsnbcat_s |
<mbstring.h> |
_mbsnbcat_s_l |
<mbstring.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость.
Эквивалент в .NET Framework
Неприменимо. Для вызова стандартной функции C используйте PInvoke. Для получения дополнительной информации см. Примеры вызовов неуправляемого кода.
См. также
Ссылки
_strncnt, _wcsncnt, _mbsnbcnt, _mbsnbcnt_l, _mbsnccnt, _mbsnccnt_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