Функцията memmove () в C ++ копира определени байтове данни от източника до местоназначението.
прототип на memmove ()
void * memmove (void * dest, const void * src, size_t count);
Най memmove()
функция отнема три аргумента: Цел, SRC и броенето. Когато memmove()
функцията се извика, тя копира броя байтове от местоположението в паметта, посочено от src, в местоположението на паметта, посочено от dest.
Копирането се извършва, дори ако указателят src и dest се припокриват. Това е така, защото копирането се извършва така, сякаш се създава междинен буфер, където данните първо се копират от src и след това се копират в dest.
Определя се в заглавния файл "> заглавния файл.
memmove () Параметри
dest
: Указател към мястото в паметта, където се копира съдържаниетоsrc
: Указател на мястото в паметта, откъдето се копира съдържанието.count
: Брой байтове за копиране от src в dest.
memmove () Върната стойност
Функцията memmove () връща dest, указателя към местоназначението в паметта на местоназначението.
Пример: Как работи функцията memmove ()
#include #include using namespace std; int main() ( int arr(10) = (8,3,11,61,-22,7,-6,2,13,47); int *new_arr = &arr(5); memmove(new_arr,arr,sizeof(int)*5); cout << "After copying" << endl; for (int i=0; i<10; i++) cout << arr(i) << endl; return 0; )
Когато стартирате програмата, изходът ще бъде:
След копиране 8 3 11 61 -22 8 3 11 61 -22