example2.l
来自「NFA DFA相关算法 编译原理的一个实验内容 使用VC++打开」· L 代码 · 共 36 行
L
36 行
%{
int comments, code, whiteSpace;
%}
%s COMMENT
%%
^[ \t]*"/*" { BEGIN COMMENT; /* enter comment eating state */ }
^[ \t]*"/*".*"*/"[ \t]*\n {
comments++; /* self-contained comment */
}
<COMMENT>"*/"[ \t]*\n { BEGIN 0; comments++;}
<COMMENT>"*/" { BEGIN 0; }
<COMMENT>\n { comments++; }
<COMMENT>.\n { comments++; }
^[ \t]*\n { whiteSpace++; }
.+"/*".*"*/".*\n { code++; comments++; }
.*"/*".*"*/".+\n { code++; }
.+"/*".*\n { code++; BEGIN COMMENT; }
.\n { code++; }
. ; /* ignore everything else */
%%
main()
{
yylex();
printf("code: %d, comments %d, white space %d\n",
code, comments, whiteSpace);
}
int yywrap()
{return 1;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?