18 réponses
Bonjour,
C'est domage il fut une époque ou j'en avais réalisé un mais j'ai perdu ces données :'(
Toujours est il que tu peux regarde ces quelques exemples pour comprendre comment ca marche :
http://veille-srv.inist.fr/dilib/v04Veille/Documentation/Tutorial/4/2/tp.fre.html
Voici un autre lien sur lex :
http://www.google.fr/url?sa=t&ct=res&cd=6&url=http%3A%2F%2Fforum.topflood.com%2Ftutorial-yacc-t3166.html&ei=EWyDR6nyEY6W-AKz6pjnDw&usg=AFQjCNFoYRlwVpFeG6lUpkC0AbMlaDrCrw&sig2=rYajUzvQhGo9gtfDTWgL5Q
C'est domage il fut une époque ou j'en avais réalisé un mais j'ai perdu ces données :'(
Toujours est il que tu peux regarde ces quelques exemples pour comprendre comment ca marche :
http://veille-srv.inist.fr/dilib/v04Veille/Documentation/Tutorial/4/2/tp.fre.html
Voici un autre lien sur lex :
http://www.google.fr/url?sa=t&ct=res&cd=6&url=http%3A%2F%2Fforum.topflood.com%2Ftutorial-yacc-t3166.html&ei=EWyDR6nyEY6W-AKz6pjnDw&usg=AFQjCNFoYRlwVpFeG6lUpkC0AbMlaDrCrw&sig2=rYajUzvQhGo9gtfDTWgL5Q
merci beaucoup pour votre reponse, mais j'ai toujours besoin d'un aide pour la realisation d'un anlyseur lexical avec lex.
a part ce problème, je doit aussi realiser un analyseur syntaxique avec le yacc. Si vous avez quelques choses pour m'aidée, aider moi s'il vous plai.
je vous remercie encore une fois. aider moi....
a part ce problème, je doit aussi realiser un analyseur syntaxique avec le yacc. Si vous avez quelques choses pour m'aidée, aider moi s'il vous plai.
je vous remercie encore une fois. aider moi....
bonjour
merci beaucoup Nico#, je doit realiser un analyseur lexical en utilisant lex pour une specification d'une interface homme machine ( une interface graphique ) et cette specification est ecrite dans un fichier texte que je doit analyser et afficher les erreurs.
si vous pouvez m'envoyé quelques idées pour mon probleme, je vous remercie d'avance.
merci beaucoup Nico#, je doit realiser un analyseur lexical en utilisant lex pour une specification d'une interface homme machine ( une interface graphique ) et cette specification est ecrite dans un fichier texte que je doit analyser et afficher les erreurs.
si vous pouvez m'envoyé quelques idées pour mon probleme, je vous remercie d'avance.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Il faut que tu commence par definir tes regles
exemple pour le lanage pascal C'est du C
c = getchar();
switch (c) {
case ':' : c=getchar();
if (c== '=')
{
unite_lex = AFFECTATION;
c= getchar();
}
else
unite_lex = DEUX_POINTS;
break;
case '<' : unite_lex := OPREL;
c= getchar();
if (c=='=')
{
attribut = INFEG;
c = getchar();
}
else
attribut := INF
break;
case .....
exemple pour le lanage pascal C'est du C
c = getchar();
switch (c) {
case ':' : c=getchar();
if (c== '=')
{
unite_lex = AFFECTATION;
c= getchar();
}
else
unite_lex = DEUX_POINTS;
break;
case '<' : unite_lex := OPREL;
c= getchar();
if (c=='=')
{
attribut = INFEG;
c = getchar();
}
else
attribut := INF
break;
case .....
bonjour
Merci beaucoup pour votre reponce Nico#,je vais essayé d'appliquer votre conseil.
je voulais vous demander si vous avez une idée comment faire pour indiquer au programme lex le fichier a analyser,d'une autre façon est ce que je doit indiquer le chemin ou se trouve le fichier a analyser ou comment?
merci.
Merci beaucoup pour votre reponce Nico#,je vais essayé d'appliquer votre conseil.
je voulais vous demander si vous avez une idée comment faire pour indiquer au programme lex le fichier a analyser,d'une autre façon est ce que je doit indiquer le chemin ou se trouve le fichier a analyser ou comment?
merci.
Non il faut creer votre fichier Lex et votre fichier Yacc pour ensuite le passer en ligne de commande comme le compilateur G++ avec C++
je vous remercie encore une fois pour votre reponse.
justement moi je travaille avec "le Parser Generator version 1.12" , ce dernier contient un fichier .l (pour lex) et un fichier.y ( pour yacc) .aprés l'exécutions de ces deux fichiers, le Parser génère le code source de l'anlyseur lexical en c++ (et aussi le code source de l'anlyseur syntaxique).
j'espère que vous avez bien compri avec quoi je travaille, j'aimerai bien que vous m'expliqué plus votre dernière reponse.
merci.
justement moi je travaille avec "le Parser Generator version 1.12" , ce dernier contient un fichier .l (pour lex) et un fichier.y ( pour yacc) .aprés l'exécutions de ces deux fichiers, le Parser génère le code source de l'anlyseur lexical en c++ (et aussi le code source de l'anlyseur syntaxique).
j'espère que vous avez bien compri avec quoi je travaille, j'aimerai bien que vous m'expliqué plus votre dernière reponse.
merci.
Aucun probleme manou mais ce soir je n'ai malheureusement pas le temps de le faire cependant je n'y manquerait pas demain soir.
>bison -d calc.y
>mv calc.tab.h calc.h
>mv calc.tab.c calc.y.c
>flex calc.lex
>mv lex.yy.c calc.lex.c
>gcc -c calc.lex.c -o calc.lex.o
>gcc -c calc.y.c -o calc.y.o
>gcc -o calc calc.lex.o calc.y.o -ll -lm [eventuellement -lfl]
Avec tout fichier Lex qui s'appelle calc.lex et ton fichier yacc calc.y
Désoler c'est avec Bison et Flex mais sinon c'est pareil
>mv calc.tab.h calc.h
>mv calc.tab.c calc.y.c
>flex calc.lex
>mv lex.yy.c calc.lex.c
>gcc -c calc.lex.c -o calc.lex.o
>gcc -c calc.y.c -o calc.y.o
>gcc -o calc calc.lex.o calc.y.o -ll -lm [eventuellement -lfl]
Avec tout fichier Lex qui s'appelle calc.lex et ton fichier yacc calc.y
Désoler c'est avec Bison et Flex mais sinon c'est pareil