gpt4 book ai didi

parsing - 使用 Lex/Flex 的扫描仪中的字符位置

转载 作者:行者123 更新时间:2023-12-04 12:25:34 27 4
gpt4 key购买 nike

在 Lex/Flex 中,有没有办法获取 token 出现在字符流中的位置(从文件的开头)?有点像 yylineno,只是它以整数形式返回字符位置?

如果不是,那么最好的方法是什么?我需要保留自己的柜台吗?

谢谢!

最佳答案

您可以使用 yyleng 和 YY_USER_ACTION 跟踪字符位置。 yyleng 具有当前 token 的长度,在匹配 token 之前调用 YY_USER_ACTION。在 YY_USER_ACTION 中,将 yyleng 添加到位置变量。除非您想要输入流开头的字符位置,否则您需要在每个行尾标记处重置变量。在您的规则操作中,变量 - yyleng 是 token 的起始位置。

关于parsing - 使用 Lex/Flex 的扫描仪中的字符位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2260107/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com