新聞速報

        

2014年3月3日 星期一

C語言 printf debug output , 使用 __FILE__和__LINE

C 的 printf debug output , 使用 __FILE__和__LINE__
 
沒有ICE的場合,常常要用 printf 將 message 送出去。
配合C 的predefined macro __FILE__ 和 __FILE__ 可以做出漂亮的debug output message。
 
__FILE__ 代表目前source code file name,是一個字串(char*)

__LINE__ 代表目前的行數,是integer。
 
所以用 printf("[%s:%d] error here!!\n",__FILE__, __LINE__);
 
可以輸出:
[test.c:121] error here!!這樣在多module (.c) file的場合,也可以迅速的知道message是由那一個module(.c) file送出的,乃至於是在source code中的第幾行,都可以知道。
 
上面的例子就是在test.c 的121行。

沒有留言:

張貼留言