一行log宏:c语言debug跟踪小利器

2017-12-11 10:52:09来源:https://jacobpan3g.github.io/cn/2017/12/08/log-line-in-c-mac作者:Ja.Code人点击

分享
第七城市

昨天在跟踪busybox中一个后台进程源码的启动问题时,由于不确定输出有没有被重定向,为了快速解决问题,信手拈来写了一个一样的log宏,放在源码中一些关键的位置,跟踪源码的走向非常有用,且高效,一下子就找到问题症结所在了。


#include <stdio.h>
#include <stdlib.h>
#define LOG_LINE() do{char a[99]={0};snprintf(a,sizeof(a),"echo %d > /dev/console",__LINE__);system(a);}while(0)

然后在一下想要跟踪的关键位置使用


LOG_LINE()


编译运行程序,就可以根据打印的行号来跟踪问题出在哪里了,可以在echo
后面添加一些容易识别的标识,以方便在众多log中一眼认出。


该宏短小精炼,问题跟踪解决后清理代码也很方便。



Jacob Pan( jacobpan3g.github.io/cn )


第七城市

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台