ERLEDIGT
NEIN
NEIN
ANTWORTEN
4
4
ZUGRIFFE
3480
3480
EMPFEHLEN
-
Wie kann ich mit flex nicht von stdin lesen, sondern von einer bestimmten Datei ?
Ich möchte bison/flex in ein Programm (ein Spiel) einbauen.
-
24.01.06 18:58 #2
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
Hi.
Das Thema gab's schon. Schau dir mal das Thema ab dem Beitrag hier an.
/edit: Quatsch, da hab ich wohl zu schnell gelesen. Das Thema gab's aber trotzdem schon. Du mußt einfach yyin einen Stream den du mit fopen() erstellt hast zuweisen.(steht übrigens auch in der Dokumentation von flex
)
Beispiel:Code :1 2 3 4 5 6 7 8 9 10 11 12
main( argc, argv ) int argc; char **argv; { ++argv, --argc; /* skip over program name */ if ( argc > 0 ) yyin = fopen( argv[0], "r" ); else yyin = stdin; yylex(); }
GrußGeändert von deepthroat (24.01.06 um 19:04 Uhr)
If at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
Tut mir wirklich leid, irgendwie schaff ich keinen anständigen Suchstring zu formulieren

Im Texinfo Manual habe ich wohl nicht gründlich genug gelesen...
Könntest du mir mal sagen, wie ich C++ Befehle in die .y Datei reinkriege, ohne bison++ zu verwenden. Tschuldige, wenn ich wieder mal beim Suchen versagt habe
-
24.01.06 23:59 #4
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
Also mein Suchstring war einfach nur "flex".
Zitat von Aiju
Ich denke da brauchst du nur die Datei in eine .yy Datei umbenennen, dann generiert bison eine .cc Ausgabedatei (wenn ich mich recht erinnere).
Zitat von Aiju
GrußIf at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
26.01.06 00:23 #5
Nun, es gibt in Yacc den sogenannten Deklarations-, bzw. Definitionsteil indem du C++ Befehle asuführen lassen darfst. Auch kannst du dir eine eigene Yacc main Programm schreiben, darfst dies dann aber nicht mit den Parametern -ly -lfl kompilieren, da diese dafür stehen, dass ein main Funktion generiert wird, falls keine selbst definiert ist.
Du kannst ausserdem C Dateien sowie andere Headerdateien inkludieren.
Beispiel:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14
%{ /* Deklarationsteil */ #include "myheaders.h" %} %start zeile %left AUSDRUCK %% zeile : zeile AUSDRUCK zeile | ; %% #include "lex.yy.c" //weitere Dinge....
Ähnliche Themen
-
[C] flex/bison, statt von stdin aus Datei lesen
Von Onkel Schuppig im Forum C/C++Antworten: 2Letzter Beitrag: 18.10.10, 09:02 -
Air/Flex-Anwendung aus einer anderen Air/Flex-Anwendung heraus starten
Von Julian Maicher im Forum Adobe Flex & AIRAntworten: 1Letzter Beitrag: 07.01.10, 15:01 -
swf Datei von Flex in Flash CS3 reinladen
Von Flasher111 im Forum Flash PlattformAntworten: 0Letzter Beitrag: 07.07.08, 19:19 -
Text aus Datei lesen, bearbeiten und in neue .txt Datei spechern
Von shisho1980 im Forum Visual Basic 6.0Antworten: 8Letzter Beitrag: 30.03.07, 19:35 -
datei lesen ok - datei lesen = permission denied
Von dune911 im Forum PHPAntworten: 7Letzter Beitrag: 11.05.02, 15:40





Zitieren
Login






