generated from freudenreichan/info2Praktikum-DobleSpiel
implemented top & clearStack
This commit is contained in:
parent
67b8200966
commit
5ba5396030
18
stack.c
18
stack.c
@ -26,7 +26,7 @@ StackNode *push(StackNode *stack, void *data)
|
||||
// freed by caller.)
|
||||
StackNode *pop(StackNode *stack)
|
||||
{
|
||||
// überprüfen ob stack einen wert besitzt data = wert next = node
|
||||
// überprüfen ob stack einen wert besitzt
|
||||
if (!stack)
|
||||
return NULL;
|
||||
//oberstes element raussuchen und dieses auf free setzen
|
||||
@ -42,12 +42,22 @@ StackNode *pop(StackNode *stack)
|
||||
void *top(StackNode *stack)
|
||||
{
|
||||
//funktions return ist oberstes stack element
|
||||
if (!stack)
|
||||
return NULL;
|
||||
|
||||
StackNode *next = stack->data;
|
||||
return next;
|
||||
}
|
||||
|
||||
// Clears stack and releases all memory.
|
||||
void clearStack(StackNode *stack)
|
||||
{
|
||||
//überprüfen ob die malloc speicher enthält (also nicht free ist)
|
||||
//komplett malloc auf free setzen
|
||||
//stack returnen
|
||||
|
||||
while(stack != NULL)
|
||||
{
|
||||
StackNode *next = stack->next;
|
||||
free(stack);
|
||||
stack = next;
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user