最近在写一个LInux下的守护程序,本人小白,没有很好的办法去调试,就想着用将运行结果打印到文本文件中,方便调试用,于是就有了以下函数。
#include <stdarg.h>
#define OUTPUT_DEBUG_INFO 1
int WriteLog(const char * format, ...)
{
if(OUTPUT_DEBUG_INFO)
{
va_list arg_ptr;
va_start(arg_ptr, format);
char logFile[]={"./debug.log"};
FILE *fp=NULL;
fp=fopen(logFile,"a+");
if(fp==NULL)
{
exit(1);
}
int nWrittenBytes = vfprintf(fp, format, arg_ptr);
va_end(arg_ptr);
fclose(fp);
return nWrittenBytes;
}
}
WriteLog("[INFO at:%s] %s(Line %d)\n",__FILE__,__FUNCTION__,__LINE__);