allgemeines
-----------

der erste block von funktionen filtert syntaxelemente anhand von stopzeichen
oder stopzeichenketten aus einem stream oder dem speicher. dementsprechend
gibt es von jeder funtion bis zu vier varianten:

1) mit stream und stopzeichenkette
2) mit speicherzugriff und stopzeichenkette
3) mit stream und stopzeichen (endung 'c')
4) mit speicherzugriff und stopzeichen

manche funktionen erhalten eine optionale flagliste:

wert	MACRO		bedeutung
1	PARSE_REPEATE	Es wird solange gesucht, bis die zeichenkette
			zwischen zwei separatoren nicht leer ist, d.h.
			der Separator darf mehrmals zwischen zwei
			syntaxelement auftauchen.
2	PARSE_NOFATAL	keine fatalen fehler erzeugen, sondern jeglichen
			syntaxfehler der aufrufenden funktion melden.

funktionen
----------

den stream fh bis zum auftauchen eines separators in output schreiben.
der separator taucht in der ausgabe nicht mehr auf, die funktion faehrt beim
naechsten aufruf hinter ihm fort. rueckgabewert -1, falls output zu
klein (size), 0 falls EOF, 1 falls erfolgreich

int parse_seps(char* output,size_t size,FILE* fh,char* sep)
int parse_seps(char* output,size_t size,char** src,char* sep)
int parse_sepc(char* output,size_t size,FILE* fh,char* sep)
int parse_sepc(char* output,size_t size,char** src,char* sep)

die folgenden funktionen lesen syntaxelemente ein.
returncode 0  = EOF
returncode -1 = syntaxfehler
returncode 1 = OK

int parse_string(string& rueck,FILE* fh,char* separator,int flags=0)
int parse_string(string& rueck,char** src,char* separator,int flags=0)
int parse_stringc(string& rueck,FILE* fh,char* separator,int flags=0)
int parse_stringc(string& rueck,char** src,char* separator,int flags=0)

int parse_scanf(FILE* fh,char* separator,int flags,char* fmt,...)
int parse_scanf(char** src,char* separator,int flags,char* fmt,...)
int parse_scanfc(FILE* fh,char* separator,int flags,char* fmt,...)
int parse_scanfc(char** src,char* separator,int flags,char* fmt,...)

veraltete funktionen (aus kompatibilitaetsgruenden noch vorhanden)
------------------------------------------------------------------

long tonumber(char* buf)
double todouble(char* buf)

int parse_number(long& rueck,FILE*fh,char* separator,int flags)
int parse_number(long& rueck,char** src,char* separator,int flags)
int parse_numberc(long& rueck,FILE*fh,char* separator,int flags)
int parse_numberc(long& rueck,char** src,char* separator,int flags)  

int parse_double(double& rueck,FILE* fh,char* separator,int flags)
int parse_double(double& rueck,char** src,char* separator,int flags)
int parse_doublec(double& rueck,FILE* fh,char* separator,int flags)
int parse_doublec(double& rueck,char** src,char* separator,int flags)



