C ++ funkcija wmemmove () nukopijuoja nurodytą skaičių plataus ženklų iš šaltinio į tikslą.
Funkcija wmemmove () yra apibrėžta antraštės faile.
wmemmove () prototipas
wchar_t * wmemmove (wchar_t * dest, const wchar_t * src, size_t count);
Funkcijai wmemmove () reikia trijų argumentų: dest, src ir count. Kai iškviečiama funkcija wmemmove (), ji nuskaito platus simbolius nuo atminties vietos, į kurią nukreipė src, į atminties vietą, į kurią nukreipė dest.
Kopijavimas atliekamas, net jei src ir adreso rodyklė sutampa. Taip yra todėl, kad sukuriamas tarpinis buferis, kuriame duomenys pirmiausia nukopijuojami iš src, o paskui nukopijuojami į dest.
Jei skaičius yra lygus nuliui, ši funkcija nieko nedaro.
wmemmove () parametrai
- dest: žymeklis plačiam simbolių rinkiniui, kuriame nukopijuojamas turinys
- src: žymeklis plačiam simbolių masyvui, iš kurio nukopijuojamas turinys.
- skaičius: plačių simbolių, kuriuos reikia nukopijuoti iš src į paskirtį, skaičius.
wmemmove () Grąžinimo vertė
- Funkcija wmemmove () grąžina pask.
Pavyzdys: Kaip veikia funkcija 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 αβγθλ