想必大家都有利用输出函数如printf来帮助我们调试程序的经历,这是一种比较原始的程序调试辅助方法,在Linux下也可以为我们所用。不过这种方法有一个明显的缺点,就是在调试完后我们必须注释或删除掉这些辅助代码。Linux C提供了-DDEBUG这个编译标记来定义DEBUG这个符号,借助于该符号,我们可以在应用程序中添加额外代码并根据需要决定执行与否。
如:
#include<stdio.h>
//*******dtest.c*******
int main()
{
#ifdef DEBUG
printf("Debug output....../n");
#endif
printf("Main function ended!/n";
}
运行:
$ cc -o dtest dtest.c
$ ./dtest
Main function ended!
$ rm dtest
$ cc -o dtest -DDEBUG dtest.c
$ ./dtest
Debug output......
Main function ended!
通过以上示例,你应该明白了-DDEBUG标记的用法了吧