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

std::wcscpy

Материал из cppreference.com
< cpp‎ | string‎ | wide
 
 
 
Широкие строки с завершающим нулём
Функции
Операции с символами
Преобразования в числовые форматы
(C++11)(C++11)
(C++11)(C++11)
Операции со строками
Операции с массивами
 
Определено в заголовочном файле <cwchar>
wchar_t *wcscpy( wchar_t *dest, const wchar_t *src );

Копирует широкую строку, на которую указывает src (включая завершающий нулевой широкий символ), в массив широких символов, на который указывает dest.

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

Содержание

[править] Параметры

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

[править] Возвращаемое значение

dest

[править] Пример

#include <clocale>
#include <cwchar>
#include <iostream>
#include <memory>
 
int main()
{
    const wchar_t* src = L"犬 means dog";
//  src[0] = L'狗'; // нельзя изменить строковый литерал
    // +1 для нулевого символа
    auto dst = std::make_unique<wchar_t[]>(std::wcslen(src) + 1);
    std::wcscpy(dst.get(), src);
    dst[0] = L'狗';
    std::setlocale(LC_ALL, "en_US.utf8");
    std::wcout.imbue(std::locale(""));
    std::wcout << src << '\n' << dst.get() << '\n';
}

Вывод:

犬 means dog
狗 means dog

[править] Смотрите также

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