%{ #include "y.tab.hh" %} %option noyywrap %option c++ %% "+" return '+'; "-" return '-'; "*" return '*'; "/" return '/'; "(" return '('; ")" return ')'; "\n" return '\n'; [1-9][0-9]* { sscanf(yytext, "%d", &yylval); return NUM; } [ \t\r] ; . printf("lex error : %s\n", yytext);