std::wmemset(3)

NAME
std::wmemset - std::wmemset

Synopsis
   Defined in header <cwchar>
   wchar_t* wmemset( wchar_t* dest, wchar_t ch, std::size_t count );
   Copies the wide character ch into each of the first count wide characters of the
   wide character array pointed to by dest.
   If overflow occurs, the behavior is undefined.
   If count is zero, the function does nothing.

Parameters
   dest - pointer to the wide character array to fill
   ch - fill wide character
   count - number of wide characters to fill

Return value
   Returns a copy of dest

Notes
   This function is not locale-sensitive and pays no attention to the values of the
   wchar_t objects it writes: nulls as well as invalid wide characters are written too.

Example
// Run this code
 #include <iostream>
 #include <cwchar>
 #include <clocale>
 #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';
 }

Possible output:
 🍌🍌蕉蕉

See also
   memset fills a buffer with a character
           (function)
           copies a certain amount of wide characters between two non-overlapping
   wmemcpy arrays
           (function)
   fill_n copy-assigns the given value to N elements in a range
           (function template)