C ++宏扩展器

时间:2011-05-05 15:35:24

标签: c++ macros

有时候我遇到了非常复杂的宏,我想查看它们将扩展到给定参数的内容(这里也有字符串连接)。是否有任何机会可以扩展宏?

我知道编译器标志-E但是单个文件(或者最好是单个宏?)

4 个答案:

答案 0 :(得分:4)

如果将鼠标悬停在它们上面,Eclipse将展开宏。对于包含其他宏的宏,Eclipse甚至可以一步一步地完成宏扩展。

(即使您通常使用其他IDE,也可以使用Eclipse。)

答案 1 :(得分:3)

C和C ++预处理器在大多数系统上称为cpp - 您可以直接使用它:

cpp somefile.c

将预处理somefile.c,扩展宏并将结果写入标准输出。如果您使用的是Microsoft编译器:

cl -E somefile.c
假设你的PATH上有编译器,

也会这样做。

答案 2 :(得分:3)

有几种选择:
在海湾合作委员会中:

gcc -E filename.c

使用计算机预编译器:

cpp filename.c

在Visual Studio中:
右键单击解决方案资源管理器上的文件,转到“属性”。在配置属性 - > C / C ++ - >预处理器& “生成预处理文件”

答案 3 :(得分:1)