La fonction memcpy en C + + copie le nombre spécifié d'octets de données à partir de la source spécifiée vers la destination spécifiée . Il s'agit d'une copie binaire si le type de données sous-jacente n'est pas pertinent. Les étapes suivantes vous aideront à utiliser la fonction memcpy . Instructions
1
savoir la syntaxe de memcpy en C + + . La syntaxe complète est void * memcpy ( void * destination , const void * source num size_t ) . Notez que cette fonction copie toujours sur num octets et ne cherche pas un caractère de terminaison afin d' être aussi efficace que possible. Memcpy retourne le tableau de destination.
2
sais que les pointeurs vers les tableaux de Source et de destination sont de type moulé à un type de vide . La taille de la destination et la source des tableaux doit être au moins sur num octets à éviter les débordements , même si cela n'est pas nécessaire. Memmove doit être considérée comme une approche plus sûre si la source et le chevauchement de destination.
3
Comprendre que la fonction C + + memcpy est conservé dans la bibliothèque de cstring . Vous devrez peut-être inclure le fichier d'en-tête string.h utiliser memcpy
4
Regardez le programme complet ci-dessous pour quelques exemples simples de la façon d'utiliser memcpy : .
# Include # inclure
int main () {char chaine1 [] = " chaîne de test"; caractères chaîne_2 [80] ; memcpy ( chaîne_2 , chaine1 , strlen ( chaine1 ) +1); printf (" chaine1 :% s \\ nstring2 :% s \\ n ", chaîne1, chaîne2 ) ; memcpy ( chaine1 ," ", 1); printf (" chaine1 :% s \\ n ", chaine1 ) ; return 0; }
5 < p > Respectez la sortie suivante de ce programme :
chaine1 : essai stringstring2 : essai stringstring1 :
la première utilisation de copies memcpy le contenu de string1 au contenu de string2 . La deuxième utilisation de memcpy efface le contenu de string1 en déplaçant le caractère nul de terminaison à la première position de chaine1 .