logo

free() Functie in C-bibliotheek met voorbeelden

De free()-functie in C wordt gebruikt om het dynamisch toegewezen geheugen vrij te maken of de toewijzing ervan ongedaan te maken en helpt bij het verminderen van geheugenverspilling. De C vrij() functie kan niet worden gebruikt om het statisch toegewezen geheugen (bijvoorbeeld lokale variabelen) of geheugen dat op de stapel is toegewezen, vrij te maken. Het kan alleen worden gebruikt om de toewijzing van het eerder toegewezen heap-geheugen ongedaan te maken met behulp van de functies malloc(), calloc() en realloc().

De functie free() wordt binnenin gedefinieerd header-bestand.



free() functie in C-bibliotheek

C free() Functie

Syntaxis van de functie free() in C

void free (void * ptr );>

Parameters

    ptr is de verwijzing naar het geheugenblok dat moet worden vrijgegeven of waarvan de toewijzing ongedaan moet worden gemaakt.

Winstwaarde

  • De functie free() retourneert geen enkele waarde.

Voorbeelden van gratis()

Voorbeeld 1:

Het volgende C-programma illustreert het gebruik van de calloc() functie om geheugen dynamisch toe te wijzen en vrij() functie om die herinnering vrij te geven.

C




wat doet ravel in python





// C program to demonstrate use of> // free() function using calloc()> #include> #include> int> main()> {> >// This pointer ptr will hold the> >// base address of the block created> >int>* ptr;> >int> n = 5;> >// Get the number of elements for the array> >printf>(>'Enter number of Elements: %d '>, n);> >scanf>(>'%d'>, &n);> >// Dynamically allocate memory using calloc()> >ptr = (>int>*)>calloc>(n,>sizeof>(>int>));> >// Check if the memory has been successfully> >// allocated by calloc() or not> >if> (ptr == NULL) {> >printf>(>'Memory not allocated '>);> >exit>(0);> >}> >// Memory has been Successfully allocated using calloc()> >printf>(>'Successfully allocated the memory using '> >'calloc(). '>);> >// Free the memory> >free>(ptr);> >printf>(>'Calloc Memory Successfully freed.'>);> >return> 0;> }>

>

>

Uitvoer

matrixprogramma in c-taal
Enter number of Elements: 5 Successfully allocated the memory using calloc(). Calloc Memory Successfully freed.>

Voorbeeld 2:

Het volgende C-programma illustreert het gebruik van de malloc() functie om geheugen dynamisch toe te wijzen en vrij() functie om die herinnering vrij te geven.

C




// C program to demonstrate use of> // free() function using malloc()> #include> #include> int> main()> {> >// This pointer ptr will hold the> >// base address of the block created> >int>* ptr;> >int> n = 5;> >// Get the number of elements for the array> >printf>(>'Enter number of Elements: %d '>, n);> >scanf>(>'%d'>, &n);> >// Dynamically allocate memory using malloc()> >ptr = (>int>*)>malloc>(n *>sizeof>(>int>));> >// Check if the memory has been successfully> >// allocated by malloc() or not> >if> (ptr == NULL) {> >printf>(>'Memory not allocated '>);> >exit>(0);> >}> >// Memory has been Successfully allocated using malloc()> >printf>(>'Successfully allocated the memory using '> >'malloc(). '>);> >// Free the memory> >free>(ptr);> >printf>(>'Malloc Memory Successfully freed.'>);> >return> 0;> }>

>

>

Uitvoer

Enter number of Elements: 5 Successfully allocated the memory using malloc(). Malloc Memory Successfully freed.>