c++ - 如何理解充满宏的大型 C/C++ 代码?

标签 c++ c visual-c++ macros

<分区>

Possible Duplicate:
C/C++ source file after preprocessing

前几天,我被分配了一个任务,修复一个在VC++ 8下开发的大型C/C++项目中的一个bug。问题是这段代码真的充满了嵌套的宏。 理解这段代码的最佳方式是什么?任何建议表示赞赏。

最佳答案

通过使用编译器行选项 /E 构建会将所有预处理器输出输出到标准输出。该文件将包含所有展开的宏以及所有包含展开的内联宏。您需要根据构建项目的方式找出添加此标志的最佳方法。通过输出,您可以更好地了解宏也在扩展什么,但是要将输出追溯到哪个宏扩展它仍然很棘手。但是,您应该能够弄清楚这一点。 Reference for the command line options for VS8.0 compiler .

正如评论中所指出的,这是重复的,这里是更好的答案:https://stackoverflow.com/a/277362/192896

关于c++ - 如何理解充满宏的大型 C/C++ 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8526933/

相关文章:

c++ - Visual C++ 在函数末尾附加 0xCC (int3) 字节

c++ - 当使用多个文件在 C++ 中编写程序时,每个类都需要自己的吗?

c++ - 将一个函数传递给 C++ 中的另一个函数,其中参数的数量可以不同

c++ - 使用命令行参数创建和运行文件

c - 无法将字符串保存到指向数组的指针中

c++ - C++中的内存扫描

c++ - 通过模板调用可能不存在的成员函数

c - 使用外部指针声明外部函数时出错

c - 运行时可加载内核模块如何知道核心内核函数的地址?

c++ - 如何在不使用标准算法的情况下在排序 vector 中添加 c 元素?