C 語言程式設計 – 除錯用巨集範例(print message for debugging)

這是一個可重複使用, 事先定義在 common header 中, 用來列印除錯訊息的範例.

主要是利用 __FILE__, __LINE__, __FUNCTION__ 等 compilier build-in 提供的資訊.
此時所有的 debug message 就不用再次(重覆)寫這幾個內容.

#define DBG_PRINTF_EN   (0)

#define DBG_PRINTF(fmt, …)
do {
if (DBG_PRINTF_EN)
printf(“%s:%d:%s(): ” fmt, __FILE__, __LINE__, __FUNCTION__, ##__VA_ARGS__);
} while (0)