【问题标题】:Tokenized output of C source codeC 源代码的标记化输出
【发布时间】:2015-02-07 11:32:14
【问题描述】:

我想查看我的 c 源代码的标记化输出。 cpp 处理器首先处理 cpp 指令,然后对 c 源代码进行标记。然后解析这个标记化的输出。

在汇编器完成工作后,过程继续进行。

我已经使用 flex 编写了我的分词器。我只是想看看 gcc 编译器是如何标记 c 源代码的。

如果我错了,请纠正我。

【问题讨论】:

  • 不太清楚你在问什么;你能改写吗?
  • 在GNU预处理器的文档中,写到c源代码被标记化了。 Ex 2+3 被标记为 Int(2) PLUS Int(3)

标签: c compiler-construction tokenize


【解决方案1】:

GCC 可以输出预处理步骤的结果,还有另一个选项(用于调试预处理器)向您显示令牌的详细信息:

gcc  -E  -fdebug-cpp  yourinpufile.c

【讨论】:

  • 我认为c-tokenizer的代码一定是用flex写的,因为GCC中使用了flex和bison。我可以获得 c-tokenizer 的源代码吗?我想了解 gcc 编译器是如何工作的。
猜你喜欢
  • 2014-10-31
  • 1970-01-01
  • 2012-05-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-20
  • 1970-01-01
相关资源
最近更新 更多