/*使用断言测试*/
#ifdef DEBUG
/*处理函数原型*/
void Assert(char * filename, unsigned int lineno);
#define ASSERT(condition)\
do{ \
if(condition)\
NULL; \
else\
Assert(__FILE__ , __LINE__);\
}while(0)
/*不使用断言测试*/
#else
#define ASSERT(condition) NULL
#endif
void Assert(char * filename, unsigned int lineno)
{
/*此处按照自己需求修改*/
fflush(stdout);
fprintf(stderr,"\nAssert failed: %s, line %u\n",filename, lineno);
fflush(stderr);
abort();
}
/*测试*/
void Test(unsigned char *str)
{
ASSERT(str != NULL);
/*函数处理代码*/
}
int main(void)
{
Test(NULL);
return 0;
}
版权声明:本文为yxq1280257646原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。