C语言断言的一种实现
void Assert(char * filename, unsigned int lineno)
{
fflush(stdout);
fprintf(stderr,"\nAssert failed: %s, line %u\n",filename, lineno);
fflush(stderr);
abort();
}
/使用断言测试/
#ifdef DEBUG
/处理函数原型/
#define ASSERT(condition)
if(condition)
NULL;
else
Assert(FILE, LINE)
/不使用断言测试/
#else
#define ASSERT(condition) NULL
#endif