c - 使用gdb调试源代码时如何判断是否定义了宏?

标签 c gdb

struct tree{
#ifdef A
   #define TREE_GET(x,y)        &x->y
#else
   #define TREE_GET(x,y)        x->y
#endif
}; 

我想知道是否定义了宏 A。有没有我可以在 gdb 中使用的命令。

最佳答案

在编译时,我们传递 -gdwarf-2 和 -g3 标志以确保编译器在调试信息中包含有关预处理器宏的信息。

例如,g++ -gdwarf-2 -g3 program.cpp -o program

C Preprocessor Macros

关于c - 使用gdb调试源代码时如何判断是否定义了宏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25665868/

相关文章:

c - C 中的内存泄漏 (MacOS)

go - 无法让 gdb 为 Go 1.3 程序工作

c++ - 如何在 Linux 中的 GDB/Nemiver 中显示 C++ STL 容器

linux - 为 valgrind 和 gdb 记录禁用 glibc (LD_HWCAP_MASK,/etc/ld.so.nohwcap) 中的 AVX 优化函数

python - 如何在tui模式下自动刷新gdb?

c - const char* 的地址是什么数据类型?

计数没有。 C编程中字符串中的单词(我收到空字符常量错误)

c - 文件输入和输出,循环创建新行

c - block 作用域和内部链接?

Linux 服务崩溃