#ifndef STRINGBUFFER_H#define STRINGBUFFER_H/* * Hier sollte noch etwas eingefuegt werden * - Deklarartion eines StringBuffers * typedef ... stringBuffer * - ... */typedef struct _stringBuffer{ struct _stringBufferElement *top;}stringBuffer;typedef struct _stringBufferElement{ char *value; struct _stringBufferElement *next;}stringBufferElement;/* * Liefert einen Pointer auf einen neuen StringBuffer. */extern stringBuffer* newStringBuffer();/* * Haengt den String s an den StringBuffer b an (dabei soll s kopiert werden!). */extern void stringBufferAppend(stringBuffer* buffer, char* text);/* * Fuegt den String s im StringBuffer b an der Stelle address * (beginnend bei 0) ein (auch hier soll s kopiert werden!). */extern void stringBufferInsert(stringBuffer* buffer, int address, char* text);/* * Haengt den StringBuffer buf2 an den StringBuffer buf1. * buf2 soll anschliessend geloescht werden. */extern void stringBufferConcatenate(stringBuffer* buf1, stringBuffer* buf2);/* * Sortiert im StringBuffer b alle Strings lexikographisch * (reiner ASCII-Vergleich reicht). */extern void stringBufferSort(stringBuffer* buf);/* * Gibt die aktuelle Laenge (= Anzahl an Elementen) zurück. */extern int stringBufferLength(stringBuffer* buf);/* * Gibt alle gespeicherten Strings zeilenweise nacheinander * auf stdout aus. Bei einem leeren Buffer wird <empty buffer> * in eine Zeile ausgegeben. */extern void stringBufferPrint(stringBuffer* buf);#endif /* STRINGBUFFER_H */