我正在尝试创建一个执行以下操作的Lex程序:
INPUT
float hey1(int a,int b);
输出
功能:hey1
它返回:float
签名:
a - float
b - 浮动
根据我对LEX的现有知识,我决定输入测试文件并将第一部分输出到另一个文件,这将成为下一部分的输入。请指引我前进,因为我走到了尽头,无法前进。
我的尝试: -
%{
FILE *out;
%}
letter [A-Za-z0-9]
%%
("float"|"void"|"int")" "{letter}*"(" fprintf(out,"Function: %s", yytext) ;
%%
int main()
{
yyin = fopen("test.c","r") ;
out=fopen("out.c","w");
yylex() ;
fclose(yyin) ;
}
谢谢