◐ Shell
clean mode source ↗

std::wmemset — cppreference.com

Материал из cppreference.com

<tbody> </tbody>

Определено в заголовочном файле <cwchar>

wchar_t* wmemset( wchar_t* dest, wchar_t ch, std::size_t count );

Копирует широкий символ ch в каждый из первых count широких символов массива широких символов, на который указывает dest.

Если происходит переполнение, поведение не определено.

Если count равно нулю, функция ничего не делает.

Параметры

dest указатель на массив широких символов для заполнения
ch широкий символ для заполнения
count количество широких символов для заполнения

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

Возвращает копию dest.

Примечание

Эта функция не зависит от локали и не обращает внимания на значения записываемых ею объектов wchar_t: записываются также нули, а также недопустимые широкие символы.

Пример

#include <clocale>
#include <cwchar>
#include <iostream>
#include <locale>

int main()
{
    wchar_t ar[4] = {L'1', L'2', L'3', L'4'};
    std::wmemset(ar, L'\U0001f34c', 2); // заменяет [12] на 🍌 бананы
    std::wmemset(ar + 2, L'蕉', 2); // заменяет [34] на 蕉 бананы

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

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

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