Memcpy()-funksjonen i C og C++ brukes til å kopiere en minneblokk fra ett sted til et annet. I motsetning til andre kopifunksjoner, er memcpy funksjonen kopierer det spesifiserte antallet byte fra ett minnested til et annet minnested uavhengig av typen data som er lagret.
Det er deklarert i header-fil. I C++ er det også definert inne header-fil.
Syntaks for memcpy
Memcpy-funksjonen er erklært som:
void * memcpy (void * to , const void * from , size_t numBytes );>
Parametere
- til : En peker til minnestedet der de kopierte dataene skal lagres. fra : En peker til minnestedet hvorfra dataene skal kopieres. numBytes : Antall byte som skal kopieres.
Returverdi
- Denne funksjonen returnerer en peker til minnestedet der data kopieres.
Eksempel på memcpy
Nedenfor er C-programmet for å vise hvordan memcpy() fungerer
C
// C program to demonstrate working of memcpy> #include> #include> int> main()> {> >char> str1[] =>'Geeks'>;> >char> str2[] =>'Quiz'>;> >puts>(>'str1 before memcpy '>);> >puts>(str1);> >// Copies contents of str2 to str1> >memcpy>(str1, str2,>sizeof>(str2));> >puts>(>'
str1 after memcpy '>);> >puts>(str1);> >return> 0;> }> |
annet java
>
>Produksjon
str1 before memcpy Geeks str1 after memcpy Quiz>
Viktige punkter om memcpy()
- memcpy() sjekker ikke for overløp eller .
- memcpy() fører til udefinert atferd når kilde- og destinasjonsadresser overlapper hverandre.
Merk : memmove() er en annen bibliotekfunksjon som håndterer overlapping godt.
Relatert artikkel
- Skriv din egen memcpy() og memmove()