Funkcja wmemmove () w C ++ kopiuje określoną liczbę szerokich znaków ze źródła do celu.
Funkcja wmemmove () jest zdefiniowana w pliku nagłówkowym.
Prototyp wmemmove ()
wchar_t * wmemmove (wchar_t * dest, const wchar_t * src, size_t count);
Funkcja wmemmove () przyjmuje trzy argumenty: dest, src i count. Kiedy funkcja wmemmove () jest wywoływana, kopiuje liczbę szerokich znaków z lokalizacji pamięci wskazywanej przez src do lokalizacji wskazywanej przez dest.
Kopiowanie jest wykonywane, nawet jeśli wskaźniki src i dest nakładają się. Dzieje się tak, ponieważ jest tworzony bufor pośredni, w którym dane są najpierw kopiowane z źródła, a następnie kopiowane do miejsca docelowego.
Jeśli liczba jest równa zero, ta funkcja nic nie robi.
wmemmove () Parametry
- dest: wskaźnik do szerokiej tablicy znaków, do której kopiowana jest zawartość
- src: Wskaźnik do szerokiej tablicy znaków, z której kopiowana jest zawartość.
- count: liczba szerokich znaków do skopiowania ze źródła do celu.
wmemmove () Zwracana wartość
- Funkcja wmemmove () zwraca dest.
Przykład: Jak działa funkcja wmemmove ()?
#include #include #include using namespace std; int main() ( setlocale(LC_ALL, "en_US.utf8"); wchar_t src() = L"u03b1u03b2u03b3u03b8u03bbu03c9u03c0"; wchar_t *dest = &src(2);// dest and src overlaps int count = 5; wmemmove(dest, src, count); wcout << L"After copying" << endl; for(int i=0; i
When you run the program, the output will be:
After copying αβγθλ