标签: c visual-studio char flex-lexer lex
我正在尝试学习如何使用flex,我遇到了一些问题:
问题在它到达下一个标记时开始,例如,如果我写了: “一个bcd”,它应该将其识别为一个令牌a,然后作为一个令牌bcd,而不是我得到下一个:
令牌a(在第一次扫描时), 在第二次扫描时,我得到2个代币: 令牌a 令牌一个bcd。
我错过了什么? (当它识别bcd时,它只是出于某种原因将令牌a更改为bcd。)
答案 0 :(得分:1)
问题是因为yytext更新本身,你需要将它复制到一个新的char才能工作