Apprendre la syntaxe de memcpy en C ++. La syntaxe complète est nulle memcpy (void destination, const void * source, size_t num) -. Notez que cette fonction copie toujours num octets et ne cherche pas un caractère de terminaison afin d'être aussi efficace que possible. Memcpy renvoie le tableau de destination.
Sachez que les pointeurs vers les réseaux source et de destination sont de type moulé à un type de vide. La taille de source et destination des réseaux devrait être au moins num octets pour éviter les débordements, bien que cela ne soit pas nécessaire. Memmove devrait être considéré comme une approche plus sûre si la source et la destination de chevauchement.
Comprendre que la fonction de la C memcpy est conservé à la bibliothèque de cstring. Vous devrez peut-être inclure le fichier d'en-tête string.h utiliser memcpy.
Regardez le programme complet ci-dessous pour quelques exemples simples de la façon d'utiliser memcpy:
inclure
inclure
int main ()
{
omble chaîne1 [] ="chaîne de test"-
string2 char [80] -
memcpy (string2, string1, strlen (string1) 1) -
printf ("string1:% s nstring2:% s n", String1, string2) -
memcpy (string1,"", 1) -
printf ("string1:% s n", String1) -
retourner 0-
}
Observez la sortie suivante pour ce programme:
string1: chaîne de test
string2: chaîne de test
string1:
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 de terminaison null à la première position de string1.