No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

analyse_lexicale.lex 1.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. ADD "+"
  2. SUB "-"
  3. MUL "*"
  4. DIV "/"
  5. tPO "("
  6. tPF ")"
  7. tAO "{"
  8. tAF "}"
  9. EOL "\n"
  10. EOI ";"
  11. SPACE " "
  12. TAB "\t"
  13. VIRGULE ","
  14. AFFECTATION "="
  15. EQUAL "=="
  16. LT "<"
  17. GT ">"
  18. LTE "<="
  19. GTE ">="
  20. tINT "int"
  21. tMAIN "main"
  22. tPRINT "printf"
  23. tRETURN "return"
  24. tIF "if"
  25. tELSE "else"
  26. tWHILE "while"
  27. tNOT "!"
  28. tAND "&&"
  29. tOR "||"
  30. tDIFF "!="
  31. DIGIT [0-9]
  32. VARIABLE [A-Za-z0-9_]+
  33. CONST "const"
  34. DECIMAL {DIGIT}+
  35. EXPONENTIEL {DIGIT}+"^"{DIGIT}+
  36. ENTIER {DECIMAL}|{EXPONENTIEL}
  37. OPERATION {ADD}|{SUB}|{MUL}|{DIV}
  38. COMPARATEUR {EGAL}|{LT}|{GT}
  39. SEPARATOR {SPACE}|{TAB}
  40. %%
  41. {ADD} {return tADD ;}
  42. {SUB} {return tSUB ;}
  43. {MUL} {return tMUL ;}
  44. {DIV} {return tDIV ;}
  45. {tPO} {return tPO ;}
  46. {tPF} {return tPF ;}
  47. {tAO} {return tAO ;}
  48. {tAF} {return tAF ;}
  49. {EOI} {return tPV ;}
  50. {SEPARATOR} {}
  51. {EOL} {}
  52. {VIRGULE} {return tVIRGULE ;}
  53. {AFFECTATION} {return tAFFECTATION ;}
  54. {EQUAL} {return tEGAL ;}
  55. {tDIFF} {return tDIFF ;}
  56. {LT} {return tLT ;}
  57. {GT} {return tGT ;}
  58. {LTE} {return tLTE ;}
  59. {GTE} {return tGTE ;}
  60. {tNOT} {return tNOT ;}
  61. {tMAIN} {return tMAIN ;}
  62. {tINT} {return tINT ;}
  63. {tPRINT} {return tPRINT ;}
  64. {tRETURN} {return tRETURN ;}
  65. {tOR} {return tOR ;}
  66. {tAND} {return tAND ;}
  67. {tIF} {return tIF ;}
  68. {tELSE} {return tELSE ;}
  69. {tWHILE} {return tWHILE ;}
  70. {CONST} {return tCONST ;}
  71. {ENTIER} {return tENTIER ;}
  72. {VARIABLE} {return tVAR ;}
  73. %%
  74. int yywrap(void){
  75. return 1;
  76. }
  77. //int main(void){
  78. // yylex();
  79. //}