flex的选项影响最终生成的词法分析器的属性和行为。这些选项可以在运行flex命令时在终端输入,也可以在.l文件中使用%option指定。
option的主要分类:
Options for Specifying Filenames
Options Affecting Scanner Behavior
Code-Level And API Options
Options for Scanner Speed and Size
Debugging Options
Miscellaneous Options
下面说明几个常用的选项
1. Options for Specifying Filenames
--header-file=FILE,%option header-file="FILE":逗号前的用于终端输入,逗号前后用于.l文件。该选项告诉flex生成名为"FILE"的头文件,该文件包含XX.yy.c文件中的一些类型和定义。
-oFILE, --outfile=FILE, %option outfile="FILE":指明词法分析源文件名,如果没有指明该选项,那么生成的词法分析源文件被命名XX.yy.c。
2 Options Affecting Scanner Behavior
-i, --case-insensitive, %option case-insensitive:忽略符号的大小写,符号即人们要分析的各种字符。
-l, --lex-compat, %option lex-compat:最大程度兼容AT&T的flex实现。
-B, --batch, %option batch:关闭超前搜索。
-I, --interactive, %opt