對于代碼的調(diào)試,關(guān)鍵的debug信息可以幫助我們快速定位到問題所在的位置,好的調(diào)試信息應(yīng)當(dāng)包括:文件名,行號,函數(shù)名,錯誤碼以及對應(yīng)的debug信息描述等等。如果debug信息量比較大,那么為了更好的使用 grep , awk 等工具快速過濾和定位指定的debug信息,對debug信息進(jìn)行適當(dāng)?shù)母袷交瘜⑹呛苡袔椭摹?br>下面分享一個我在開發(fā)中使用的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