是什么。我用于扩展?

时间:2016-05-20 04:40:12

标签: c++ file-format

我正在关注this教程,学习如何在c ++中创建编译器。但在本教程中,作者为词法分析创建了tokens.I文件。

任何人都可以告诉我什么是.I扩展用于??

谢谢

4 个答案:

答案 0 :(得分:3)

对于“lex”文件,我认为扩展名为.l(小写L)。

答案 1 :(得分:1)

C预处理器和C编译器之间的中间文件。所有的宏都在这里扩展。

答案 2 :(得分:0)

以下是编译器的一些基本知识,引用http://dinosaur.compilertools.net/

  

用于编程语言的编译器或解释器通常分解为两部分:

1. Read the source program and discover its structure.
2. Process this structure, e.g. to generate the target program.
     

再次发现源结构的任务被分解为子任务:

 a. Split the source file into tokens
 b. Find the hierarchical structure of the program

有许多工具可以为您完成任务a,例如LexFlexRe2c。因此,基本上,您可以根据工具的语法在.l文件中定义一些令牌解析规则(使用正则表达式),然后将其传递给那些工具,然后让它们为您执行令牌解析。

答案 3 :(得分:-1)

http://whatis.techtarget.com/fileformat/I-Intermediate-file-Borland-C

引用:

  

我是Borland C ++使用的中间预处理器输出文件格式。我的文件用于在编译器的解析器之间编译和传递二进制令牌流。我的文件也可用于撰写文本输出。