標題:[轉貼] debug message 小技巧
時間: Mon Mar 14 21:32:25 2011
轉貼:http://crazyrushstar.blogspot.com/2009/04/debug-message.html
寫程式.. 常常會用一個開關來控制debug message
通常會有幾種寫法。
1.用一個function包起來, 在function中決定訊息流向.
void dbgprint(const char *format, ...)
{
va_list arg;
va_start(arg, format);
vsnprintf(rule_buf+strlen(CMD_NAME), BUF_SIZE, format, arg);
va_end(arg);
if(debug)
fprintf(fw_rule_fp,"%s\n",rule_buf);
}
2.用定義來決定function
#if 0
#define DBG printk
#else
#define DBG
#endif
就程式而且,第二個方法速度快而且code size會比較小,除非有什麼其它需要,通常來
說會用第二種。
第二種又有一些變型。 直接把目前覺得最棒的變形記下來。
#if DEBUG
#define DBG(args...) printk(args)
#else
#define DBG(args...)
#endif
在Makefie 中
CFLAGS += -DDEBUG
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.219.108.145
※ 編輯: gorky 來自: 61.219.108.145 (03/14 21:32)