58 lines
1.7 KiB
C
58 lines
1.7 KiB
C
#ifndef QUEUE_H
|
|
#define QUEUE_H
|
|
|
|
/*--- #includes ------------------------------------------------------*/
|
|
#include <limits.h>
|
|
#include <stdio.h>
|
|
|
|
/*--- #defines -------------------------------------------------------*/
|
|
#define TRUE 1
|
|
#define FALSE 0
|
|
#define QLEER INT_MIN
|
|
|
|
/*--- Datentypen (typedef) -------------------------------------------*/
|
|
typedef int Bool;
|
|
|
|
typedef struct Jose {
|
|
int value;
|
|
struct Jose* next;
|
|
struct Jose* prev;
|
|
} Jose;
|
|
|
|
extern Jose* head;
|
|
extern Jose* tail;
|
|
/*--- Prototypen globaler Funktionen ---------------------------------*/
|
|
|
|
/*--------------------------------------------------------------------*\
|
|
* Einfuegen in Liste
|
|
* Parameter:
|
|
* zahl fügt die übergebene Zahl 'zahl' am Ende der Liste ein
|
|
* Return Wert:
|
|
* TRUE wenn noch genug Speicherplatz vorhanden
|
|
* FALSE wenn kein Speicherplatz mehr allokiert werden konnte
|
|
* Hinweis:
|
|
* - dynamische Verwaltung von Speicher muss mit malloc() und free()
|
|
* durchgeführt werden; dynamische Arrays sind nicht erlaubt !!!
|
|
*--------------------------------------------------------------------*/
|
|
Bool put(int zahl);
|
|
|
|
/*--------------------------------------------------------------------*\
|
|
* Auslesen aus Liste
|
|
* Parameter:
|
|
* keine
|
|
* Return Wert:
|
|
* Zahl am Anfang der Liste oder aber QLEER, wenn Liste leer ist.
|
|
*--------------------------------------------------------------------*/
|
|
int get(void);
|
|
|
|
/*--------------------------------------------------------------------*\
|
|
* Pruefen der Liste
|
|
* Parameter:
|
|
* keine
|
|
* Return Wert:
|
|
* liefert TRUE, wenn Queue leer ist, sonst FALSE
|
|
*--------------------------------------------------------------------*/
|
|
Bool isEmpty(void);
|
|
|
|
#endif /*QUEUE_H*/
|