名前空間
変種
操作

std::wmemset

From cppreference.com
< cpp‎ | string‎ | wide
 
 
 
 
ヘッダ <cwchar> で定義
wchar_t* wmemset( wchar_t* dest, wchar_t ch, std::size_t count );

幅広文字配列 dest が指す先の最初の count 個の幅広文字に、幅広文字 ch をコピーします。

オーバーフローが発生した場合、動作は未定義です。

countがゼロの場合、関数は何も行いません。

目次

[編集] パラメータ

dest - 埋める幅広文字配列へのポインタ
文字 - 埋める幅広文字
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';
}

実行結果の例

🍌🍌蕉蕉

[編集] 関連項目

バッファを文字で埋める
(関数) [編集]
オーバーラップしていない2つの配列間で、指定された数のワイド文字をコピーする
(関数) [編集]
範囲内のN個の要素に指定された値をコピー代入する
(関数テンプレート) [編集]
English 日本語 中文(简体) 中文(繁體)