Wel, verdorie, het zelfde gebeurt weer !
Hier is de code :
#include <stdio.h>
#include <stdlib.h>
struct node
{
unsigned short waarde;
struct node * volgende;
};
struct node * tll ( struct node * ll, unsigned char print );
void nn ( struct node * ll );
void dll ( struct node * ll );
int main ()
{
struct node * root = ( struct node * ) malloc ( sizeof ( struct node ) );
root->waarde = 10;
root->volgende = ( struct node * ) malloc ( sizeof ( struct node ) );
tll ( root, 1 );
dll ( root );
return 0;
}
struct node * tll ( struct node * ll, unsigned char print )
{
if ( !print )
while ( ll )
ll = ll->volgende;
else
while ( ll )
{
printf ( "%hu", ll->waarde );
ll = ll->volgende;
}
return ll;
}
void nn ( struct node * ll )
{
tll ( ll, 0 );
ll = ( struct node * ) malloc ( sizeof ( struct node ) );
}
void dll ( struct node * ll )
{
while ( ll )
{
struct node * free_mem = ll;
ll = ll->volgende;
free ( free_mem );
}
}
Sorry, ik zou wat extra informatie willen geven, maar die heb ik niet.