我对lex和yacc非常陌生。请帮助我写我的以下要求的lex代码。
输入:
print "myprint":arg预期输出:
print - is print function
myprint - is a print string
arg - is a print argumentmyexaple代码:
arg = 10
print "myprint":arg //myprint10我知道Stack Overflow用户不会给出练习类问题的答案。因为我是新用户,所以我很难使用lex编写代码
发布于 2014-05-02 20:37:07
@sujin不只是给你答案,你可以考虑找出lex和yacc文件的例子。这里有两个可能会指引你走向正确方向的方法:
lex http://www.quut.com/c/ANSI-C-grammar-l-2011.html
yacc http://www.quut.com/c/ANSI-C-grammar-y-2011.html
lex文件应该让您了解要创建来表示令牌的常量和模式。yacc将让您了解语法是如何构造的。
此外,O‘’Reilly还写了一本很好的书"Lex & Yacc“(虽然现在有点过时了),里面有一些简化的例子。如果你能找到一份副本(印刷版或电子版),它就相对容易理解,也是值得的。
https://stackoverflow.com/questions/23427821
复制相似问题