名稱空間
變體
操作

std::wmemmove

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

src 指向的寬字元陣列中複製正好 count 個連續的寬字元到 dest 指向的寬字元陣列中。

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

陣列可以重疊:複製操作就像寬字元被複制到一個臨時寬字元陣列中,然後再從臨時陣列複製到 dest 中一樣進行。

目錄

[編輯] 引數

dest - 指向要複製到的寬字元陣列的指標
src - 指向要複製的寬字元陣列的指標
count - 要複製的寬字元數

[編輯] 返回值

返回 dest 的副本。

[編輯] 注意

此函式不區分割槽域設定,也不關注所複製的 wchar_t 物件的值:空字元和無效字元也會被複制。

[編輯] 示例

#include <clocale>
#include <cwchar>
#include <iostream>
#include <locale>
 
int main()
{
    std::setlocale(LC_ALL, "en_US.utf8");
    std::wcout.imbue(std::locale("en_US.utf8"));
 
    wchar_t str[] = L"αβγδεζηθικλμνξοπρστυφχψω";
    std::wcout << str << '\n';
    std::wmemmove(str + 4, str + 3, 3); // copy from [δεζ] to [εζη]
    std::wcout << str << '\n';
}

可能的輸出

αβγδεζηθικλμνξοπρστυφχψω
αβγδδεζθικλμνξοπρστυφχψω

[編輯] 另請參閱

在兩個不重疊的陣列之間複製一定數量的寬字元
(函式) [編輯]
將一個緩衝區移動到另一個緩衝區
(函式) [編輯]
將一個範圍的元素複製到一個新位置
(函式模板) [編輯]
以逆序複製一個範圍的元素
(函式模板) [編輯]
C 文件 用於 wmemmove