我是 C 编程语言和 gcc 的新手。
我试图破译一个相当复杂的 C 程序。我想阅读一个有用的列表文件而不是源文件。
我正在寻找由 gcc 编译器创建的列表文件,其中包含:
i++;,则i声明一个注释为 are。我对此进行了搜索,但是 gcc 有很多选项,我迷路了。
如果有更好的地方可以问我的问题,请告诉我。
小智 5
好吧,我是老派,OP 需要的是预处理器输出,是的,它比 IDE 更有启发性。预处理器处理所有 # 语句,例如 #include 和 #ifdef。因此它向您展示了最终成为编译器输入的内容。g++ 手册页解释了 4 个步骤:预处理、编译、汇编和链接
它继续解释说该序列可以在任何时候停止。然后在“预处理器选项”下,解释了控制它的方法。正如另一篇文章所述, -E 可以解决问题,但这只是答案的一部分。为了更好地控制,请使用 -f 系列选项,例如 -fdirectives-only。所以OP想要的是:
gcc -E -fdirectives-only -o MySrc.lst MySrc.cpp
Run Code Online (Sandbox Code Playgroud)
对于那些使用 C++ 的人,我建议直接使用 g++:
g++ -E -fdirectives-only -o MySrc.lst MySrc.cpp
Run Code Online (Sandbox Code Playgroud)
所需的列表位于 MySrc.lst 中
| 归档时间: |
|
| 查看次数: |
14205 次 |
| 最近记录: |