對于代碼的調試,關鍵的debug信息可以幫助我們快速定位到問題所在的位置,好的調試信息應當包括:文件名,行號,函數名,錯誤碼以及對應的debug信息描述等等。如果debug信息量比較大,那么為了更好的使用 grep , awk 等工具快速過濾和定位指定的debug信息,對debug信息進行適當的格式化將是很有幫助的。
下面分享一個我在開發中使用的debug工具. 希望對大家有所幫助。
#ifndef CLASS_DEBUG_LOG_INFO_H_INCLUDED
#define CLASS_DEBUG_LOG_INFO_H_INCLUDED

#include <stdio.h>


#ifdef DEBUG

#define LOG_DEBUG_INFO(
) \
do \


{ \
fprintf( stderr , "[%s][%d][%s][" , __FILE__ , __LINE__ , __FUNCTION__ ); \
fprintf( stderr , __VA_ARGS__ ); \
fprintf( stderr , "]\n" ); \
}while( false )

#else

#define LOG_DEBUG_INFO(
) \
do \


{ \
\
}while( false )

#endif

#endif



//使用示例:
LOG_DEBUG_INFO( "some useful debug information to be recorded" );
LOG_DEBUG_INFO( "ErrCode:%d , ErrMsg:%s" , errno , strerror( errno ) );



點擊下載
posted on 2010-02-26 21:11
luckycat 閱讀(3329)
評論(3) 編輯 收藏 引用 所屬分類:
Linux