Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <string.h>
- #include "threeAdd.tab.h"
- void yyerror(char*);
- extern YYSTYPE yylval;
- %}
- NAME [a-zA-Z]
- DIGITS [0-9]
- DOUBLE {DIGITS}(\.{DIGITS})?
- %%
- [ \t]+ { }
- {DIGITS}+ {//sscanf(yytext,"%s", &yylval.ivar);
- strcpy(yylval.ivar,yytext);
- }
- "+" {
- return *yytext;
- }
- "-" {
- return *yytext;
- }
- "*" {
- return *yytext;
- }
- "/" {
- return *yytext;
- }
- "=" {
- return *yytext;
- }
- "(" {
- return *yytext;
- }
- ")" {
- return *yytext;
- }
- {NAME} {
- //sscanf(yytext,"%s", &yylval.ivar);
- strcpy(yylval.ivar,yytext);
- }
- "\n" {
- return *yytext;
- }
- exit {
- return 0;
- }
- . {
- char msg[25];
- sprintf(msg," <%s>","invalid character",yytext);
- yyerror(msg);
- }
- %%
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement