%{
#include <stdio.h>
#include <stdlib.h>
%}
%option noyywrap
%%
[ \t\n\r]+ { /* Ignore whitespace */ }
"int"|"float"|"return" { printf("Keyword: %s\n", yytext); }
[0-9]+ { printf
("
Number: %s\n", yytext); } [a-zA-Z_][a-zA-Z0-9_]* { printf("Identifier: %s\n", yytext); }
"+"|"-"|"*"|"/" { printf("Operator: %s\n", yytext); }
. { printf("Unknown: %s\n", yytext); }
%%
int main() {
yylex(); // This runs the lexical analyzer
return 0;
}
JXsKI2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KJX0KCiVvcHRpb24gbm95eXdyYXAKCiUlCgpbIFx0XG5ccl0rICAgICAgICAgICAgICAgICAgeyAvKiBJZ25vcmUgd2hpdGVzcGFjZSAqLyB9CiJpbnQifCJmbG9hdCJ8InJldHVybiIgICAgICAgeyBwcmludGYoIktleXdvcmQ6ICVzXG4iLCB5eXRleHQpOyB9ClswLTldKyAgICAgICAgICAgICAgICAgICAgICB7IHByaW50ZigiTnVtYmVyOiAlc1xuIiwgeXl0ZXh0KTsgfQpbYS16QS1aX11bYS16QS1aMC05X10qICAgICAgeyBwcmludGYoIklkZW50aWZpZXI6ICVzXG4iLCB5eXRleHQpOyB9CiIrInwiLSJ8IioifCIvIiAgICAgICAgICAgICB7IHByaW50ZigiT3BlcmF0b3I6ICVzXG4iLCB5eXRleHQpOyB9CgouICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBwcmludGYoIlVua25vd246ICVzXG4iLCB5eXRleHQpOyB9CgolJQoKaW50IG1haW4oKSB7CiAgICB5eWxleCgpOyAgLy8gVGhpcyBydW5zIHRoZSBsZXhpY2FsIGFuYWx5emVyCiAgICByZXR1cm4gMDsKfQo=