free() Funktion i C-biblioteket: Hvordan bruges det? Lær med eksempel
Hvad er fri funktion i C?
free() funktion i C-bibliotek giver dig mulighed for at frigive eller deallokere hukommelsesblokke, som tidligere er allokeret af calloc(), malloc() eller realloc() funktioner. Det frigør hukommelsesblokkene og returnerer hukommelsen til heap. Det hjælper med at frigøre hukommelsen i dit program, som vil være tilgængelig til senere brug.
I C bliver hukommelsen til variabler automatisk deallokeret på kompileringstidspunktet. For dynamisk hukommelsesallokering i C skal du deallokere hukommelsen eksplicit. Hvis det ikke gøres, kan du støde på fejl i hukommelsen.
free() Syntaks:
void free(void *ptr)
Her er ptr den hukommelsesblok, der skal deallokeres.
Lad os nu lære, hvordan du bruger funktionen gratis i C-sprog med et eksempel.
free() i C Eksempel:
#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);
}
Output af ovenstående gratis i C eksempel:
Value of the 2nd integer is 50
