Lex代码将C程序划分为函数和签名

时间:2016-02-19 10:54:08

标签: flex-lexer lex lexical-analysis lexical

我正在尝试创建一个执行以下操作的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) ;
}

谢谢

0 个答案:

没有答案