1. 程式人生 > >單片機調試 - 如何簡單有效的插入和刪除調試語句

單片機調試 - 如何簡單有效的插入和刪除調試語句

行號 file 有效 lin -1 源碼編譯 orm pro line

#ifdef __debug
    #define debug(format,...)    printf("File:  "__FILE__", Line:  %05d-------->"format"/n", __LINE__, ##__VA_ARGS__)
#else
    #define debug(format,...)
#endif

說明:

1、編譯器支持不定參數的宏定義,‘ ## ‘的意思是,如果可變參數被忽略或為空,將使預處理器( preprocessor )去除掉它前面的那個逗號

2、編譯器內置宏:

__LINE__:在源代碼中插入當前源代碼行號;

__FILE__:在源文件中插入當前源文件名;

__DATE__:在源文件中插入當前的編譯日期

編譯器在進行源碼編譯的時候,會自動將這些宏替換為相應內容。

如下是IAR 提供的預置宏:

技術分享

單片機調試 - 如何簡單有效的插入和刪除調試語句