Namespaces
Variants

std:: strncat

From cppreference.net
Определено в заголовочном файле <cstring>
char * strncat ( char * dest, const char * src, std:: size_t count ) ;

Добавляет байтовую строку, на которую указывает src , к байтовой строке, на которую указывает dest . Копируется не более count символов. Результирующая байтовая строка завершается нулевым символом.

Целевая байтовая строка должна иметь достаточно места для содержимого как dest , так и src плюс завершающий нулевой символ, за исключением того, что размер src ограничен значением count .

Поведение не определено, если строки перекрываются.

Содержание

Параметры

dest - указатель на нуль-терминированную байтовую строку, к которой производится добавление
src - указатель на нуль-терминированную байтовую строку, из которой производится копирование
count - максимальное количество символов для копирования

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

dest

Примечания

Поскольку std::strncat требуется находить конец dest при каждом вызове, использование std::strncat для объединения множества строк в одну неэффективно.

Пример

#include <cstdio>
#include <cstring>
int main() 
{
    char str[50] = "Hello ";
    const char str2[50] = "World!";
    std::strcat(str, str2);
    std::strncat(str, " Goodbye World!", 3); // может вызвать предупреждение "усеченный вывод"
    std::puts(str);
}

Вывод:

Hello World! Go

Смотрите также

объединяет две строки
(функция)
копирует одну строку в другую
(функция)
C documentation для strncat