1

我在 Visual Studio 中使用 Ansi C,创建了简单的 Ansi C 程序(我不得不将 VS 配置更改为不使用 cpp 而是使用 ansi c)

int a = 0;
int b = 0;

printf("Hello World! \n\n");

system("PAUSE");
return 0;

我编译了它并生成了这个:

在此处输入图像描述

首先,我期待一个简单的 .exe,但我不知道为什么会创建这个 .ilk 和 .pdb,但这里的问题是如何查看编译后的 c 程序生成的汇编代码?

谢谢

4

2 回答 2

3

.ilk是一个增量链接文件,当您对代码进行微小更改然后重新链接时,它可以帮助加快链接速度。

.pdb是一个程序数据库——调试时使用。

要获得您的代码翻译成的汇编语言,您可以使用/Fa.

于 2016-06-01T23:20:11.927 回答
0

使用Assembler Output项目属性中的设置。

您可以通过以下方式请求 Visual Studio 显示已编译程序的汇编代码:

  1. 在解决方案资源管理器中右键单击项目名称,然后Properties从出现的菜单中进行选择。
  2. 使用出现的对话框左侧的树形视图菜单,单击Configuration Properties> C/C++> Output Files
  3. 将值Assembler Output从更改No ListingAssembly with Source Code (/FAs)
  4. 单击确定关闭对话框。
  5. 重建你的程序。

现在您将拥有一个项目名称.asm文件,位于项目目录的 Debug 或 Release 子目录中。那是一个显示程序源代码的文本文件,以及每一行转换成的汇编代码。

于 2016-06-01T23:28:56.470 回答