我正在尝试使用Flex生成扫描仪。版本是2.5.4。来自http://gnuwin32.sourceforge.net/packages/flex.htm网站。
我正在使用Flex手册中的示例。
我的环境是运行VS2010的Windows 7。
所以我执行flex -c++ scanner.l
生成命令lex.yy.cc
。
我创建一个简单的控制台应用程序。并包含目录“ C:\ GnuWin32 \ include”,其中包含flexlexer.h
和unistd.h
。
我还将文件添加lex.yy.cc
到VS2010并进行编译并得到以下错误:
c:\ gnuwin32 \ include \ flexlexer.h(47):致命错误C1083:无法打开包含文件:iostream.h:无此类文件或目录
所以我换iostream.h
了iostream
。但是现在我得到了:
c:\ gnuwin32 \ include \ flexlexer.h(72):错误C2061:语法错误:标识符'ostream'
问题是在名称空间std中定义。我以为我可以在没有这种问题的情况下将flex编译为C ++。
难道我做错了什么?使用错误的版本?
谢谢!
我下载并使用Win flex-bison,现在一切正常。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句