Flex ++的常见难点

时间:2011-07-09 22:51:41

标签: c++ lex flex-lexer flex++

注意:有超过1500个代表的人...请将flex ++和bison ++添加为标签:)。

好像互联网上的人们一直在使用Flex ++遇到以下错误:

scanner.l:1: bad character: %
scanner.l:1: unknown error processing section 1

在我给Flex ++的任何例子中都会发生这种情况。我的版本来自here,我已尝试过该页面上的确切示例,但仍然会收到这些错误。我已经尝试过在Linux和Mac上完全没有想法了!

似乎Flex ++也是旧病毒的名称,所以特别难以进行有用的讨论!

编辑:

以下是产生上述错误的示例(从上面的链接中获取的示例中的前几行):

%name CalcScanner
%define IOSTREAM
%define LEX_PARAM YY_CalcParser_STYPE *val, YY_CalcParser_LTYPE *loc
%define MEMBERS public: int line, column;                                                                                               
%define CONSTRUCTOR_INIT : line(1), column(1)

%header{
#include<sstream>
#include "parser.h"
%}

任何帮助都会非常棒。

编辑2:请允许人们通过添加'flex'标签来编辑此帖子吗? Flex将是我用来标记的,但Flex也是一种Adobe技术 - 它不是我使用的工具。 SO上的flex标签用于Adobe产品(因此标签上的徽标)。谢谢你:)。

1 个答案:

答案 0 :(得分:2)

检查你的行尾? CR + LF vs NL可能会有所不同。