所以我的问题很简单,我想之前已经有人回答了,但我无法找到关于它的好线索:我可以解析一次文件,收集一些必要的信息来初始化我的结构,然后解析第二次是“真的”吗?
当我两次调用 yylex()
时,它似乎什么也没做。还是我需要重置文件的读取指针?我是 C 菜鸟所以这可能是一个愚蠢的问题!无论如何,我们将不胜感激。
最佳答案
使用 yyrestart(FILE *in)
。
但请注意 flex manual建议您应该在第一次构建解析树,而不是像这样的二次扫描器。
关于c - 连续两次使用 yylex(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8379255/