generated from freudenreichan/info2Praktikum-DobleSpiel
22 lines
638 B
C
22 lines
638 B
C
#ifndef STACK_H
|
|
#define STACK_H
|
|
|
|
// Eigener Stack-Knotentyp, damit es keinen Konflikt mit bintree.h gibt
|
|
typedef struct stack_node {
|
|
void *data; // Nutzdaten
|
|
struct stack_node *next; // Zeiger auf das nächste Element im Stack
|
|
} StackNode;
|
|
|
|
// Legt ein Element oben auf den Stack
|
|
StackNode *push(StackNode *stack, void *data);
|
|
|
|
// Entfernt das oberste Element und gibt den neuen Stack-Kopf zurück
|
|
StackNode *pop(StackNode *stack);
|
|
|
|
// Liefert die Daten des obersten Elements (ohne zu entfernen)
|
|
void *top(StackNode *stack);
|
|
|
|
// Gibt den gesamten Stack frei
|
|
void clearStack(StackNode *stack);
|
|
|
|
#endif // STACK_H
|