有没有办法用MSVC编译器输出有效的已定义宏列表?

时间:2016-08-02 05:59:31

标签: c visual-c++ macros

我正在使用MSVC编译器cl.exe开展一个大型C项目。许多代码都以宏定义为条件。因此,可以生成有效的已定义宏列表作为编译过程的副输出。所以我可以知道编译的哪部分代码是活动的。

ADD 1

评论中提到的thread并未解决我的问题。它仅显示如何获取每个源文件的中间预处理结果。但我想要的是整个项目的有效宏定义列表。

我需要这个,因为在编译之前需要配置一些C项目通过定义/取消定义各种宏来执行配置。如果我有一个定义宏的最终有效列表,我可以很容易地看到我是否正确配置了项目。

1 个答案:

答案 0 :(得分:0)

您可以使用Visual Studio Class View窗口列出所有已定义的宏:

enter image description here

但是,这不会显示在项目选项中声明的预处理器定义。没有编译器开关,允许列出编译输出中的所有有效定义。但是,您可以使用/P/E开关来检查预处理的输出,并查看实际用于编译的代码。