名稱空間
變體
操作

std::wmemset

來自 cppreference.com
< cpp‎ | string‎ | wide
在標頭檔案 <cwchar> 中定義
wchar_t* wmemset( wchar_t* dest, wchar_t ch, std::size_t count );

將寬字元 ch 複製到 dest 所指向的寬字元陣列的前 count 個寬字元中。

如果發生溢位,行為未定義。

如果 count 為零,函式不執行任何操作。

目錄

[edit] 引數

dest - 指向要填充的寬字元陣列的指標
ch - 填充寬字元
count - 要填充的寬字元數量

[edit] 返回值

返回 dest 的副本。

[edit] 注意

此函式不區分割槽域設定,也不關注它寫入的 wchar_t 物件的值:空字元和無效寬字元也會被寫入。

[edit] 示例

#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';
}

可能的輸出

🍌🍌蕉蕉

[edit] 參閱

用字元填充緩衝區
(函式) [編輯]
在兩個不重疊的陣列之間複製一定數量的寬字元
(函式) [編輯]
將給定值複製賦給一個範圍中的 N 個元素
(函式模板) [編輯]
C 文件 關於 wmemset