用法:在头文件中增加下面代码,不需要调试信息时注释掉第一行即可

#include <stdio.h>
#include <syslog.h>
#if Debug
#define DEBUG
#endif
#ifdef DEBUG
#define debug(format, ...) printf (format, ##__VA_ARGS__)
#else
#define debug(format, ...)
#endif

int main()
{
//openlog("Controlagent",LOG_NDELAY,LOG_USER);
debug("if you see this is shell ,then it comes from stderr\r\n");
return 0;
}

示例:

debug("value =%d.\n",value);        //相当于 printf("value =%d.\n",value);

功能:

        有定义DEBUG宏时就会输出调试信息,没有定义DEBUG宏时不输出调试信息

 

后台运行输出重定向

# g++ 1213.cpp -o 1213
# nohup ./1213 >1213.log 2>&1 &