MEMCPY |
Copie mémoire |
---|---|
Langage C | string.h |
Syntaxe
void *memcpy(const void *tampondestination, const void *tamponsource, size_t n); |
Paramètres
Nom | Description |
---|---|
tampondestination | Ce paramètre permet d'indiquer le tampon recevant les données |
tamponsource | Ce paramètre permet d'indiquer le tampon contenant les données à copier |
n | Ce paramètre permet d'indiquer la taille du tampon en octets |
Description
Cette fonction permet de copier un tampon source dans un tampon de destination de «n» octets.
Algorithme
MODULE MEMCPY(dest, src, n) * Copier les n premiers octets de src vers dest BOUCLE POUR i ← 0 JUSQU'A n - 1 FAIRE * Copier l'octet à la position i de src vers dest dest[i] ← src[i] FIN BOUCLE POUR * Retourner le pointeur vers la zone de destination RETOURNE dest |
Remarques
- Le type de données sous-jacent des tampons de données pour la source ou la destination est sans importance pour cette fonction. Ainsi, la fonction memcpy fait tous simplement une copie binaires des données.
- La fonction ne vérifie pas la présence d'un caractère de terminaison NUL (ASCII 0) dans la source et donc copie toujours exactement le même nombre d'octets indiqué par le paramètre n.
- Pour éviter les débordements de mémoire, la taille des tampons de données pointés par les paramètres tampondestination et tamponsource doit être au moins de la taille indiqués par le paramètre n et ne doivent pas se chevaucher.
- Si votre tampon de mémoire de la source chevauche celui de la destination, vous devriez plutôt utiliser la fonction memmove, car la fonction memcpy ne gère pas cette situation.
Exemple
Voici quelques exemples typiques de l'utilisation de cette fonction :
Essayer maintenant !
on obtiendra le résultat suivant :
B[0] = 0B[1] = 1
B[2] = 2
B[3] = 3
B[4] = 4
B[5] = 5
B[6] = 6
B[7] = 7
B[8] = 8
B[9] = 9
B[10] = 10
B[11] = 11
Voir également
Langage de programmation - C - Référence de procédures et fonctions - memmove
Langage de programmation - C - Référence de procédures et fonctions - memset
Langage de programmation - C++ - Référence de procédures et fonctions - memcpy
Langage de programmation - C pour Linux - Référence de procédures et fonctions - MEMCPY
Langage de programmation - C pour Unix - Référence de procédures et fonctions - MEMCPY
Langage de programmation - C pour OS/2 - Support de Windows 3.1 - HMEMCPY
Langage de programmation - MinGW pour C ou C++ - Référence de procédures et fonctions - MEMCPY
Langage de programmation - Quick C - Référence de procédures et fonctions - MEMCPY
Langage de programmation - Symantec C++ - Référence de procédures et fonctions - MEMCPY
Langage de programmation - Turbo C - Référence de procédures et fonctions - MEMCPY
Langage de programmation - Visual C++ - Référence de procédures et fonctions - MEMCPY
Références
Langage C, Edition Micro-Application, Gehard Willms, 2001, ISBN: 2-7429-2008-0, page 733.
Borland C++ for Windows 4.0, Library Reference, Edition Borland, 1993, Part # BCP1240WW21772, page 175.