English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutoriel de base C

Contrôle de flux C

Fonctions en C

Tableaux en C

Pointeurs en C

Chaines de caractères en C

Structure C

Fichier C

Autres C

Manuel de référence du langage C

Utilisation et exemple de la fonction free() de la bibliothèque C

Bibliothèque standard - <stdlib.h>

Fonction de bibliothèque C void free(void *ptr) Libérer l'espace mémoire alloué précédemment par calloc, malloc ou realloc.

Déclaration

Voici la déclaration de la fonction free().

void free(void *ptr)

Paramètre

  • ptr -- Le pointeur pointe sur un bloc de mémoire à libérer, ce bloc de mémoire a été alloué précédemment par un appel à malloc, calloc ou realloc. Si le paramètre passé est un pointeur null, aucune action n'est exécutée.

Valeur de retour

Cette fonction ne renvoie aucune valeur.

Exemple en ligne

Le exemple suivant montre l'utilisation de la fonction free().

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
   char *str;
   /* 分配内存的初始值 */
   str = (char *) malloc(15);
   strcpy(str, "w3codebox");
   printf("String = %s,  Adresse = %p\n", str, str);
   /* Réallouer la mémoire */
   str = (char *) realloc(str, 25);
   strcat(str, ".com");
   printf("String = %s,  Adresse = %p\n", str, str);
   /* Libérer la mémoire allouée */
   free(str);
   return(0);
}

Laissez-nous compiler et exécuter le programme suivant, ce qui produira le résultat suivant :

Chaine = w3codebox, Adresse = 0x7fe4e4c02b10
Chaine = oldtoolbag.com, Adresse = 0x7fe4e4c02b10

Bibliothèque standard - <stdlib.h>