std::wmemset
Определено в заголовке <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); // replaces [12] with the 🍌 bananas
std::wmemset(ar + 2, L'蕉', 2); // replaces [34] with the 蕉 bananas
std::setlocale(LC_ALL, "en_US.utf8");
std::wcout.imbue(std::locale("en_US.utf8"));
std::wcout << std::wstring(ar, 4) << '\n';
}
Возможный вывод:
🍌🍌蕉蕉
См. также
|
(C++26) | заполняет буфер символом (функция) |
| копирует заданное количество широких символов между двумя неперекрывающимися массивами (функция) |
|
| копирующим присваиванием записывает заданное значение в N элементов диапазона (шаблон функции и объект-функция алгоритма) |
|
|
(C++20) | |
Документация по C для wmemset |
|
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/string/wide/wmemset