C++ 编写lexer:lexer找不到“

C++ 编写lexer:lexer找不到“,c++,lexer,C++,Lexer,我正在编写一种只有一个关键字的小型编程语言,这就是write。我没有做语法分析器,只是做了lexer。它在到达token之前工作得很好 main.cpp: 输出为: 而不是 String:hello 我能做什么?有什么想法吗?我认为它应该是skipws而不是noskipws,因为当它在write和hello之间遇到空格时,你不会处理这个问题;特别是你没有清除tok,所以下一个循环它仍然认为令牌是一个空格。解决此类问题的正确工具是你的调试器。你应该逐步完成在询问堆栈溢出问题之前,请逐行检查您的代

我正在编写一种只有一个关键字的小型编程语言,这就是write。我没有做语法分析器,只是做了lexer。它在到达token之前工作得很好

main.cpp:

输出为:

而不是

String:hello

我能做什么?有什么想法吗?

我认为它应该是skipws而不是noskipws,因为当它在write和hello之间遇到空格时,你不会处理这个问题;特别是你没有清除tok,所以下一个循环它仍然认为令牌是一个空格。

解决此类问题的正确工具是你的调试器。你应该逐步完成在询问堆栈溢出问题之前,请逐行检查您的代码。有关更多帮助,请阅读。至少,您应该在问题中包含一个重现您的问题的示例,以及您在调试器中所做的观察。调试器不提供错误,当您逐行检查代码时,变量值是什么?也可以使用字符串kens[];看起来不对,编译了吗?删除了,还是什么都没有。当您单步执行时,变量值是多少?thnx非常非常非常much@GameplayerXd没问题
write "hello"
write write write write write write write ...
String:hello