FREE |
Libère |
---|---|
Turbo C | stdlib.h |
Syntaxe
void free(void *pointeurbloc); |
Paramètres
Nom | Description |
---|---|
pointeurbloc | Ce paramètre permet d'indiquer un pointeur sur le bloc de mémoire à libérer |
Description
Cette fonction permet de libérer un bloc de mémoire.
Remarques
- La fonction suppose que vous avez préalablement réservé de la mémoire par une fonction calloc ou malloc.
- Après que la mémoire est libéré, le programme pourra utiliser la mémoire libérer pour d'autres tâches ou programmes éventuelles. De ce fait, vous ne devez plus utiliser l'emplacement que vous venez de libérer, si vous le faite, vous risquez de provoquer un phénomène de corruption de mémoire.
- Si vous passez comme paramètre la valeur «NULL», la fonction quittera immédiatement et le programme poursuivra son exécution normalement.
Exemple
Voici quelques exemples typiques de l'utilisation de cette fonction :
- #include <stdio.h>
- #include <stdlib.h>
-
- int main() {
- long * tableau1, * tableau2;
- tableau1 = malloc(1000*sizeof(long));
- tableau2 = calloc(1000,sizeof(long));
- if(tableau1 != NULL) {
- printf("Libère le tableau1\n");
- free(tableau1);
- }
- if(tableau2 != NULL) {
- printf("Libère le tableau2\n");
- free(tableau2);
- }
- return 0;
- }
on obtiendra le résultat suivant s'il y a assez de mémoire disponible :
Libère le tableau1Libère le tableau2
Voir également
Langage de programmation - Turbo C - Référence de fonctions - calloc
Langage de programmation - Turbo C - Référence de fonctions - malloc
Langage de programmation - Turbo C - Référence de fonctions - realloc
Dernière mise à jour : Dimanche, le 28 juin 2015