写一个函数封装printf用作trace
方法一:
#include <stdio.h>
#include <stdarg.h>
void my_trace(const char *cmd, ...)
{
printf("%s %s ", __DATE__, __TIME__);
va_list args; //定义一个va_list类型的变量,用来储存单个参数
va_start(args,cmd); //使args指向可变参数的第一个参数
vprintf(cmd,args); //必须用vprintf等带V的
va_end(args); //结束可变参数的获取
}
方法二:
#define DBG_PRINT (printf("%s:%u %s:%s:\t", __FILE__, __LINE__, __DATE__, __TIME__), printf)
附加参考:
http://bbs.csdn.net/topics/90162956 (看四楼#4)
这篇博客介绍了如何通过两种方法封装printf函数,用于创建一个自定义的trace功能。方法一是利用`va_list`,`va_start`,`vprintf`和`va_end`进行参数处理;方法二是使用宏定义`DBG_PRINT`简化调用。同时,博客还提供了额外的参考资料链接。
909

被折叠的 条评论
为什么被折叠?



