[Lex] Problème d'affichage
bonjour à tous , je dois réaliser en lex un programme qui reconnait un identificateur, un entier, et un réel , et pour cela , je dispose de l'executable LEX.exe , et de la bibliothèque LEXLIB
mon LEX.exe converti le code entré en LEX en code PASCAL ;
pour commencé , voila ce que je propose comme code LEX :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
%{
uses lexlib;
%}
lettre [A-Za-z]
numero [0-9]
identificateur {lettre}(_|{lettre}|{numero})*
entier {numero}+
exposant [eE][+-]?{entier}
reel {entier}("."|{entier})?{exposant}?
%%
entier writeln('Ceci est un ENTIER.\n');
identificateur writeln('Ceci est un IDENTIFICATEUR.\n');
reel writeln('Ceci est un REEL.\n');
%%
BEGIN
yylex;
END. |
LEX.exe me génere le .PAS sans aucune erreur (y'ont n'a-t-il ??)
Donc je compile et je lance avec turbo pascal et comme résultat, tout ce qu j'écrit , se réaffiche .
mes questions sont donc :
est-ce-que mon code LEX est correct??
est-ce qu'il faut l'écrire de cette façon pour qu'à chaque fois qu'il reconnait un entier, un identificateur ou un réel , il m'affiche ce que c'est ??
merci pour vos réponses...