📄 lcmm.l
字号:
%{#include <stdio.h>#include "y.tab.h"#include "tree.h"void comment();%}D [0-9]L [a-zA-Z]%option yylineno%%"/*" {comment();}"int" {return INT;}"real" {return REAL;}"while" {return WHILE;}"write" {return WRITE;}"read" {return READ;}"if" {return IF;}"else" {return ELSE;}{L}({L}|{D}|"_")* { yylval.ttype = make_node(IDENTIFIER_NODE); yylval.ttype->identifier.name = strdup(yytext); return IDENTIFIER; }{D}+ { yylval.ttype = make_node(INTEGER_CST); yylval.ttype->int_cst.value = atoi(yytext); return CONSTANT; }{D}*"."{D}+|{D}+"."{D}* { yylval.ttype = make_node(REAL_CST); yylval.ttype->real_cst.value = atof(yytext); return CONSTANT; }">=" {return GE_OP;}"<=" {return LE_OP;}"==" {return EQ_OP;}"!=" {return NE_OP;}"&&" {return AND_OP;}"||" {return OR_OP;}'&' {return '&';}'^' {return '^';}'|' {return '|';}">" {return '>';}"<" {return '<';}"=" {return '=';}"+" {return '+';}"-" {return '-';}"*" {return '*';}"/" {return '/';}"(" {return '(';}")" {return ')';}"{" {return '{';}"}" {return '}';}"[" {return '[';}"]" {return ']';}";" {return ';';}":" {return ':';}"," {return ',';}[ \t\n\v\f]+ { /* ignore whitespace */ }. { /* ignore bad characters */ } %%/** * @brief 蹇界暐娉ㄩ噴閲岀殑鎵
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -