Professional Documents
Culture Documents
Partie 2 : Rgles de
traduction
Partie 3 : fonctions en C
58
partie
unions...
dclarations de dfinitions rgulires utilisables par les rgles de
traduction.
Exemple :
blancs [\t\n ]+
lettre [A-Za-z]
chiffre10 [0-9]
Exemple
action1
action2
59
60
61
62
28/10/2015
Partie 2 :
sinon {printf("\n Mot cl: ELSE\n");}
si
{printf("\n Mot cl: IF\n");}
alors {printf("\n Mot cl: THEN\n");}
{id} {printf("\n Identificateur:%s\n",yytext);}
{nb} {printf("\n Nombre:%s\n",yytext);}
"<=" {printf("\n Operateur relationnel: PPE\n");}
"<>" {printf("\n Operateur relationnel: DIF\n");}
"<"
{printf("\n Operateur relationnel: PPQ\n");}
">=" {printf("\n Operateur relationnel: PGE\n");}
>" {printf("\n Operateur relationnel: PGQ\n");}
"==" {printf("\n Operateur relationnel: EGA\n");}
"("
{printf("\n PO\n");}
")"
{printf("\n PF\n");}
.
{printf("\n%s: Caractre non reconnu\n",yytext);}
63
Partie 3 :
int main()
{
FILE *fichier;
printf("Nom du fichier analyser");
scanf("%s",&fichier);
yyin=fichier;
yylex();
return 0;
}
64
Remarques:
"." est un oprateur qui veut dire tous caractre sauf le
retour la ligne.
yytext est un pointeur sur la chane analyse.
yyin correspond l'entre
yylex() est la fonction principale du programme crit en
LEX.
Installation Flex
Tlcharger MinGW de http : //www.mingw.org
Installation de MinGW
Installer les gcc, Flex et Bison du catalogue de MinGW
Ajouter le chemin de MinGW, flex et bison la variable
66
Installation Flex
Installation Flex
67
68
28/10/2015
69
70
71
72
73
74
28/10/2015
C:\MinGW\bin
C:\MinGW\msys\1.0\bin
75