首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >flex自动生成的文件不能使用吗?

flex自动生成的文件不能使用吗?
EN

Stack Overflow用户
提问于 2011-05-27 11:57:49
回答 1查看 351关注 0票数 0

我正在为我的编译器项目使用flex lexer作为一个lexer,并且我有这样的函数来更改lexer输入流,如下所示:

.l

代码语言:javascript
运行
复制
void initLexer(string code) {
    lineNumber = 1;
    columnNumber = 0;
    currentStringIndex = 0;
    yy_delete_buffer(YY_CURRENT_BUFFER);
    YY_BUFFER_STATE my_string_buffer = yy_scan_string("sh");
    yy_switch_to_buffer(my_string_buffer);
}

我使用以下选项生成合适的例程

代码语言:javascript
运行
复制
%option nounput 
%option nomain nodefault
%option noyywrap
%option warn
%option c++

在运行flex工具并获得自动生成的cpp文件后,我尝试构建我的项目,但它无法识别

代码语言:javascript
运行
复制
error C2065: 'yy_current_buffer' : undeclared identifier    
error C3861: 'yy_delete_buffer': identifier not found   
error C3861: 'yy_scan_string': identifier not found 
error C3861: 'yy_switch_to_buffer': identifier not found    

为什么??我该怎么办??

EN

回答 1

Stack Overflow用户

发布于 2011-10-14 08:31:11

我解决这个问题的方法--我使用了来自MinGW包的flex

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6151928

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档