strcat, wcscat, _mbscat

Дополняет строку. Доступны более безопасные версии этих функций; see , , _mbscat_swcscat_s.strcat_s

Важно!

_mbscat_s не может использоваться в приложениях, запускаемых в среде выполнения Windows. Дополнительные сведения: Функции CRT, которые не поддерживаются в приложениях универсальной платформы Windows.

Синтаксис

char *strcat(
   char *strDestination,
   const char *strSource
);
wchar_t *wcscat(
   wchar_t *strDestination,
   const wchar_t *strSource
);
unsigned char *_mbscat(
   unsigned char *strDestination,
   const unsigned char *strSource
);
template <size_t size>
char *strcat(
   char (&strDestination)[size],
   const char *strSource
); // C++ only
template <size_t size>
wchar_t *wcscat(
   wchar_t (&strDestination)[size],
   const wchar_t *strSource
); // C++ only
template <size_t size>
unsigned char *_mbscat(
   unsigned char (&strDestination)[size],
   const unsigned char *strSource
); // C++ only

Параметры

strDestination
Строка назначения, завершающаяся нуль-символом.

strSource
Исходная строка, завершающаяся символом NULL.

Возвращаемое значение

Каждая из этих функций возвращает строку назначения (strDestination). Нет зарезервированных возвращаемых значений для указания ошибки.

Замечания

Функция strcat добавляет strSource в strDestination и завершает результирующую строку символом NULL. Начальный символ строки strSource переопределяет завершающий символ NULL строки strDestination. При перекрытии исходного и конечного буферов поведение strcat не определено.

Важно!

strcat не проверяет, достаточно ли места в строке strDestination, перед добавлением strSource, в связи с чем может возникнуть ошибка переполнения буфера. Вместо этого рекомендуется использовать strncat.

Функции wcscat и _mbscat являются версиями функции strcat для расширенных и многобайтовых символов. Аргументы и возвращаемые значения wcscat являются строками с широкими символами. Аргументы и возвращаемое значение _mbscat являются многобайтовыми строками. В остальном эти три функции ведут себя идентично.

В C++ эти функции имеют шаблонные перегрузки, которые вызывают более новые и безопасные аналоги этих функций. Дополнительные сведения см. в разделе "Безопасные перегрузки шаблонов".

Сопоставления подпрограмм универсального текста

TCHAR.H Обычной _UNICODE и _MBCS не определен _MBCS Определенные _UNICODE Определенные
_tcscat strcat _mbscat wcscat

Требования

Маршрут Обязательный заголовок
strcat <string.h>
wcscat <string.h> или <wchar.h>
_mbscat <mbstring.h>

Дополнительные сведения о совместимости см. в разделе Совместимость.

Пример

Пример см. в примере strcpy.

См. также

Обработка строк
strncat, _strncat_l, wcsncat, _wcsncat_l, _mbsncat, _mbsncat_l
strncmp, wcsncmp, _mbsncmp, _mbsncmp_l
strncpy, _strncpy_l, wcsncpy, _wcsncpy_l, _mbsncpy, _mbsncpy_l
_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l
strrchr, wcsrchr, _mbsrchr, _mbsrchr_l
strspn, wcsspn, _mbsspn, _mbsspn_l