Flex bison?

sofiane -  
 alex -
flex bison?

SVP j'ai un tp en compilation de construire des analyseurs avec flex et bison mon probléme je ne sais pas comment traduit les régles de la grammaire :
E>E+T|T
T>T*F|F
F>(E)|degit
SVP ME DONNEZ les commandes en flex necessaires merci

8 réponses

snoussisouhail Messages postés 2 Statut Membre 1
 
Fais un fichier fichier.y et tapes ce qui suit:

%{
#include <stdio.h>
%}
%token degit
%%
E : E + T
|T
;
T : T * F
|F
;
F : (E)
|DEGIT
;
%%
#include "lex.yy.c"


Et puis un deuxième fichier fichier2.l

%{
#include<stdio.h>
int cpt=1;
%}
%%
"digit," return(DEGIT);
[0-9]+ {yylval=atoi(yytext);
return(NB);
}
[()$+*/-] return(yytext[0]);
[ \t] ;
\n cpt++;
. printf("Erreur Lexical à la ligne %d \n",cpt);
%%



Pour compiler il faut taper les commandes suivantes:
#bison fichier.y --> b.tab.c
#flex fichier.l --> lex.yy.c
#gcc fichier.tab.c -o exe -ly -lfl
1
sofiane
 
aucune réponse?
0
aa
 
bjr,
voici un lien qui vous sera utile :
http://langevin.univ-tln.fr/CDE/LEXYACC/Lex-Yacc.html (ce lien mene aussi vers les manuels flex et bison)
sinon je vous conseille d'aller voir coté construction des compilateurs vous trouverez votre bonheur dans les tutoriaux

Bon courage
0
aa
 
Ohhh desolé mdrrrrrrrr j'ai pas vu l'année 2007 !!!
jspr que depuis vous ete devenu un expert !
mdrr desole j'ai pas vu mdrrr je suis tomber dessus par hasard !!!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
silset
 
merci , j'ai eu moi l'information en 2008 :)

de toute facon merci pour tout le monde :)
0
otakuu Messages postés 331 Statut Membre 38
 
Bonjour !!
Moi je l'ai eu en 2009 !! :) super site thank you very much !!!
0
sprouty14
 
tu marque sa ou ? dans le code source ?
0
alex
 
...encore du tigrou?
0