【发布时间】:2014-02-23 23:13:32
【问题描述】:
有没有办法为 flex 读取的每个令牌创建一个唯一标识符?
例如:
弹性:
"+" {yylval.string =yytext;return PLUS;}
[0-9]+ {
yylval.string =yytext;
return INT;}
野牛:
E: INT PLUS INT
{
Node($1.ID);Node(PLUS.ID);Node($3.ID);Edge(PLUS.ID,$1.ID);Edge(PLUS.ID,$3.ID);
}
每次有输入时都会创建唯一节点。 这只是我想要完成的一个例子。当调用 Node(...) 和 Edge(...) 时,会打印到文件,该文件稍后会转换为图形。 我希望它们独一无二,因为我想创建它:
不是这个:
也欢迎其他类型的解决方案。
【问题讨论】:
标签: bison flex-lexer