Пространства имён
Варианты
Действия

std::wcsncat

Материал из cppreference.com
 
 
 
Широкие строки с завершающим нулём
Функции
Операции с символами
Преобразования в числовые форматы
(C++11)(C++11)
(C++11)(C++11)
Операции со строками
Операции с массивами
 
<tbody> </tbody>
Определено в заголовочном файле <cwchar>
wchar_t *wcsncat( wchar_t *dest, const wchar_t *src, std::size_t count );

Добавляет не более count широких символов из широкой строки, на которую указывает src, в конец строки символов, на которую указывает dest, останавливаясь, если нулевой терминатор скопирован. Широкий символ src[0] заменяет нулевой терминатор в конце dest. В конце всегда добавляется нулевой терминатор (поэтому максимальное количество широких символов, которые может записать функция, равно count + 1).

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

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

Параметры

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

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

dest

Пример

#include <clocale>
#include <cwchar> 
#include <iostream>
 
int main(void) 
{
    wchar_t str[50] = L"Земля, прощай.";
    std::wcsncat(str, L" ", 1);
    std::wcsncat(str, L"В добрый путь.", 8);// добавляет только первые 8 широких символов

    std::setlocale(LC_ALL, "en_US.utf8");
    std::wcout.imbue(std::locale("en_US.utf8"));
    std::wcout << str << '\n';
}

Возможный вывод:

Земля, прощай. В добрый

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

добавляет копию одной широкой строки к другой
(функция) [править]
объединяет определённое количество символов двух строк
(функция) [править]
копирует одну широкую строку в другую
(функция) [править]