char总是使用flex

时间:2017-04-12 06:34:11

标签: c visual-studio char flex-lexer lex

我正在尝试学习如何使用flex,我遇到了一些问题:

  • 每次找到令牌时我希望它存储在我创建的令牌中,那部分工作正常!
  • 问题在它到达下一个标记时开始,例如,如果我写了: “一个bcd”,它应该将其识别为一个令牌a,然后作为一个令牌bcd,而不是我得到下一个:

    令牌a(在第一次扫描时),
    在第二次扫描时,我得到2个代币:
    令牌a 令牌一个bcd。

我错过了什么? (当它识别bcd时,它只是出于某种原因将令牌a更改为bcd。)

1 个答案:

答案 0 :(得分:1)

问题是因为yytext更新本身,你需要将它复制到一个新的char才能工作