#define Debug(...) printf(__VA_ARGS__)
使用的時(shí)候只需要:
Debug("Y = %d\n", y);
此時(shí)編譯器會(huì)自動(dòng)替換成printf("Y = %d\n", y");
對(duì)于##__VA_ARGS__的‘##’符號(hào)的用法,
例如:#define debug(format, ...) fprintf (stderr, format, ## __VA_ARGS__)
假如可變參數(shù)宏為空的時(shí)候,”“##”的作用就是讓編譯器忽略前面一個(gè)逗號(hào),不然編譯器會(huì)報(bào)錯(cuò)。
Powered by 單片機(jī)教程網(wǎng)