在写代码的时候应该有一个DEBUG模式,在每一步打印各种日志,就不用写好一个模块测试一个模块了。这里有一个简单的DEBUG PRINT的例子,有几个比较重要的宏,__FILE__是所在的.c.h文件,__func__是函数名,__LINE__是源代码在第几行。
__VA_ARGS__是写的时候的参数。
#ifdef DEBUG
#define TCP_DEBUG_PRINTF(condition,...) \
do { \
if((condition)) \
{ \
fprintf(stderr,"\nIn %s - function %s at line %d: ", __FILE__, __func__, __LINE__); \
fprintf(stderr,__VA_ARGS__); \
} \
} while(0)
#else
#define TCP_DEBUG_PRINTF(...) (void)0
#endif