Den memcpy funksjon i C + + kopierer angitt antall byte med data fra den angitte kilden til den oppgitte destinasjonen . Dette er en binær kopien slik det underliggende datatype er irrelevant . Følgende trinn vil hjelpe deg å bruke memcpy funksjonen. Instruksjoner
en
Lær syntaksen til memcpy i C + + . Den komplette syntaksen er ugyldig * memcpy (void * reisemål, const void * kilde , size_t num ); . Merk at denne funksjonen alltid kopierer num bytes og ser ikke for en avslutning karakter for å være så effektiv som mulig . Memcpy returnerer reisemålet array.
2
Vite at pekere til kilden og målet arrays er type- cast til en type ugyldig. Størrelsen av destinasjonen og kilde arrays bør være minst num bytes for å unngå overløp , selv om dette ikke er nødvendig. Memmove bør betraktes som et tryggere alternativ hvis kilde og destinasjon overlapping .
3
Forstå at C + + memcpy funksjonen er holdt i CString biblioteket. Du må kanskje inkludere string.h header-fil for å bruke memcpy
4
titt på følgende komplett program for noen enkle eksempler på hvordan du bruker memcpy : .
# Include # inkludere
int main ( ) { char streng1 [ ] = "test streng" ; røye string2 [ 80 ]; memcpy ( string2 , streng1 , strlen ( streng1 ) 1 ); printf ( " streng1 :% s \\ nstring2 :% s \\ n " , streng1 , streng2 ) ; memcpy ( streng1 ," ", 1 ); printf ( " streng1 :% s \\ n " , streng1 ), tilbake 0 ;}
5
Vær oppmerksom på følgende utdata for dette programmet : en
streng1 : test stringstring2 : test stringstring1 : en
den første bruken av memcpy kopier innholdet i streng1 til innholdet i string2 . Den andre bruken av memcpy sletter innholdet i streng1 ved å flytte null terminator karakter til den første plasseringen av streng1 .