La fonction memcpy() en C et C++ est utilisée pour copier un bloc de mémoire d'un emplacement à un autre. Contrairement aux autres fonctions de copie, le mémoire La fonction copie le nombre spécifié d'octets d'un emplacement mémoire à l'autre emplacement mémoire, quel que soit le type de données stockées.
Il est déclaré dans En tête de fichier. En C++, il est également défini à l'intérieur En tête de fichier.
Syntaxe de memcpy
La fonction memcpy est déclarée comme suit :
void * memcpy (void * to , const void * from , size_t numBytes );>
Paramètres
- to : Un pointeur vers l’emplacement mémoire où les données copiées seront stockées. from : Un pointeur vers l’emplacement mémoire à partir duquel les données doivent être copiées. numBytes : Le nombre d'octets à copier.
Valeur de retour
- Cette fonction renvoie un pointeur vers l'emplacement mémoire où les données sont copiées.
Exemple de mémoire
Vous trouverez ci-dessous le programme C pour montrer le fonctionnement de memcpy()
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;> }> |
qu'est-ce que $home Linux
>
>Sortir
str1 before memcpy Geeks str1 after memcpy Quiz>
Points importants à propos de memcpy()
- memcpy() ne vérifie pas le débordement ou .
- memcpy() conduit à un comportement indéfini lorsque les adresses source et de destination se chevauchent.
Note : memmove() est une autre fonction de bibliothèque qui gère bien le chevauchement.
Article associé
- Écrivez vos propres memcpy() et memmove()