fork download
  1. %{
  2. #include<stdio.h>
  3. #include<conio.h>
  4. int Upper = 0;
  5. int Lower = 0;
  6. int Logical = 0;
  7. int Datatype = 0;
  8. int ident = 0;
  9. int number = 0;
  10. int sym = 0;
  11. int op = 0;
  12. %}
  13.  
  14. %%
  15.  
  16. [&&]|[|][|] { printf("Logical Operator\t"); Logical++;}
  17. int|char|double|float|bool|long|short { printf("Datatype\t"); Datatype++;}
  18. else\ if|if|else|while|do|main { printf("Identifier\t"); ident++;}
  19. [A-Z] { printf("Uppercase\t"); Upper++;}
  20. [a-z] { printf("Lowercase\t"); Lower++;}
  21. [0-9] { printf("Number\t"); number++;}
  22. ["] { printf("Quotes\t"); sym++;}
  23. [,] { printf("Comma\t"); sym++;}
  24. [;] { printf("Semi Colon\t"); sym++;}
  25. [+|-|*|/|<<|>>|^|!] { printf("Operator"); op++;}
  26. \ { printf("Space\t"); }
  27. [^A-Za-z\n] { printf("Unidentified\t"); }
  28.  
  29. %%
  30.  
  31. int yywrap()
  32. {
  33. return 1;
  34. }
  35.  
  36. int main()
  37. {
  38. printf("Please enter the string\n");
  39. yylex();
  40. printf("Uppercase: %d, Lowercase: %d, Logical: %d, Datatype: %d, Identifier: %d, Number: %d, Symbol: %d, Operator: %d", Upper, Lower, Logical, Datatype, ident, number, sym, op);
  41. getch();
  42. return 0;
  43.  
  44. }
Success #stdin #stdout #stderr 0.03s 6920KB
stdin
Standard input is empty
stdout
Standard output is empty
stderr
ERROR: /home/KirdEZ/prog:44:0: Syntax error: Unexpected end of file
ERROR: '$runtoplevel'/0: Undefined procedure: program/0
   Exception: (3) program ? EOF: exit