mueslirocker
Mitglied
Hallo,
ich arbeite mit Cygwin/Flex und möchte dort einen (recht langen) String parsen.
Leider verlangt Flex als yyin ja einen Stream FILE*.
Hab mir schonmal das struct angeschaut...
... aber ich bin mir nicht sicher, wie ich nun einen String in diesen Buffer/Stream überführen kann.
Mit dem Rückweg hab ich leider auch noch ein Problem.
Flex bzw mein Flexprogramm schreibt ebenfalls in einen FILE*.
Bislang hängt da eine Datei hinter, aber ich möchte diesen Buffer erst füllen und am Ende entweder in eine Datei schreiben oder wieder in einen String umwandeln und zurück geben.
Kann mir da jemand helfen?
MfG
Mueslirocker
/edit
Hab mal versucht, ein bisschen mit das Struct zu manipulieren.
Der Compiler (gcc) gibt Fehler aus, da ich "angeblich" in einem Struct namens __sFILE64 hantiere.
Ein solches Struct gibt es in der stdio.h aber nicht.
Meine Verwirrung wächst ständig..
ich arbeite mit Cygwin/Flex und möchte dort einen (recht langen) String parsen.
Leider verlangt Flex als yyin ja einen Stream FILE*.
Hab mir schonmal das struct angeschaut...
Code:
typedef struct _iobuf
{
char* _ptr;
int _cnt;
char* _base;
int _flag;
int _file;
int _charbuf;
int _bufsiz;
char* _tmpfname;
} FILE;
Mit dem Rückweg hab ich leider auch noch ein Problem.
Flex bzw mein Flexprogramm schreibt ebenfalls in einen FILE*.
Bislang hängt da eine Datei hinter, aber ich möchte diesen Buffer erst füllen und am Ende entweder in eine Datei schreiben oder wieder in einen String umwandeln und zurück geben.
Kann mir da jemand helfen?
MfG
Mueslirocker
/edit
Hab mal versucht, ein bisschen mit das Struct zu manipulieren.
Der Compiler (gcc) gibt Fehler aus, da ich "angeblich" in einem Struct namens __sFILE64 hantiere.
Ein solches Struct gibt es in der stdio.h aber nicht.
Meine Verwirrung wächst ständig..
Zuletzt bearbeitet: