free() Functie in C-bibliotheek: hoe te gebruiken? Leer met voorbeeld

Wat is vrije functie in C?

De gratis() functie in C-bibliotheek kunt u geheugenblokken vrijgeven of vrijgeven die eerder zijn toegewezen door calloc(), malloc() of realloc()-functies. Het maakt de geheugenblokken vrij en retourneert het geheugen naar de heap. Het helpt het geheugen in uw programma vrij te maken, zodat het later beschikbaar is voor gebruik.

In C wordt de toewijzing van het geheugen voor variabelen tijdens het compileren automatisch opgeheven. Voor dynamische geheugentoewijzing in C moet u de toewijzing van het geheugen expliciet ongedaan maken. Als u dit niet doet, kunt u een fout met onvoldoende geheugen tegenkomen.

free() Syntaxis:

void free(void *ptr)

Hier is ptr het geheugenblok waarvan de toewijzing ongedaan moet worden gemaakt.

Laten we nu leren hoe we de functie van free in kunnen gebruiken C taal met een voorbeeld.

free() in C Voorbeeld:

#include <stdio.h>
int main() {
int* ptr = malloc(10 * sizeof(*ptr));
if (ptr != NULL){
  *(ptr + 2) = 50;
  printf("Value of the 2nd integer is %d",*(ptr + 2));
}
free(ptr);
}

Uitvoer van het bovenstaande gratis in C-voorbeeld:

 Value of the 2nd integer is 50