Funkcija memmove () u C ++ kopira određene bajtove podataka od izvora do odredišta.
prototip memmove ()
void * memmove (void * dest, const void * src, size_t count);
memmove()
Funkcija traje tri argumenta: Odred, src i računati. Kada je memmove()
funkcija pozvana, kopira brojeve bajtova s memorijskog mjesta na koje pokazuje src na memorijsko mjesto na koje pokazuje dest.
Kopiranje se izvodi čak i ako se pokazivač src i dest preklapaju. To je zato što se kopiranje odvija kao da se stvara međusredni međuspremnik u kojem se podaci prvo kopiraju u src, a zatim konačno kopiraju u dest.
Definirano je u datoteci zaglavlja "> datoteka zaglavlja.
parametri memmove ()
dest
: Pokazivač na memorijsko mjesto na koje se sadržaj kopirasrc
: Pokazivač na memorijsko mjesto s kojeg se kopira sadržaj.count
: Broj bajtova za kopiranje iz src u dest.
memmove () Povratna vrijednost
Funkcija memmove () vraća dest, pokazivač na odredište memorijskog mjesta.
Primjer: Kako funkcionira memmove () funkcija
#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; )
Kada pokrenete program, izlaz će biti:
Nakon kopiranja 8 3 11 61 -22 8 3 11 61 -22