_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

strncat

_mbsnbcat_s

wcsncat

_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. Для получения дополнительной информации см. Примеры вызовов неуправляемого кода.

См. также

Ссылки

Управление строками (CRT)

_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