【发布时间】:2020-04-23 18:57:41
【问题描述】:
有什么方法可以找出#define Pre 处理器指令的值。
例子:
#define CONST 1
#if CONST
add(a,b);
#endif
以下是我的问题。
- 在上面的代码中有一种方法可以找出内存中 CONST 的值。
- CONST 是否有存储它的地址。
- 我们能否通过查看 .map 文件并找出 CONST 的值来找出答案。
【问题讨论】:
-
如果 CONST 的域必须是一个 int,那么你可以声明一个 int 变量并将 CONST 赋值给它。如果它偏离 int ,那么编译器会抱怨。如果域高度灵活,那么只要您使用 gcc,您就可以 stringify 并将其分配给
char *变量(也许其他工具支持宏值的字符串化)。
标签: c c-preprocessor