Hallo allemaal.
Ik heb een vraag. Met de funcite malloc zorg ik voor een plaats in het geheugen voor een deel van mijn Linked List, maar na een tijdje heb ik deze niet meer nodig, en wil ik het geheugen dat ik met de Linked List bezet houd, teruggeven met bijvoorbeeld de functie free, hoe kan ik dit doen ?
Trouwens, hier is mijn test programma :
#include <stdio.h>
#include <stdlib.h>
struct node
{
int waarde;
struct node *volgende;
};
int main()
{
struct node *root;
struct node *machinist;
root = malloc( sizeof( struct node ) );
root->volgende = malloc( sizeof( struct node ) );
machinist = root;
while ( machinist->volgende != 0)
{
printf( "%s", "Geef een geheel getal :");
scanf( "%d", &machinist->waarde );
printf( "%d \n", machinist->waarde );
machinist = machinist->volgende;
machinist->volgende = malloc ( sizeof ( node struct ) );
}
return 0;
}
Opmerking : ja, ik weet dat de while lus oneindig is. Dit zal ik zometeen even oplossen, als ik weet hoe ik het in beslag genomen geheugen weer terug geef.
Alvast bedankt.