assert()
宏主要用于辅助测试程序;assert()
宏当表达式求值为假(非零)时, assert()
宏就在标准错误流(stderr)写入一条错误信息(包括出错文件与行号)并调用 abort()
函数终止程序;assert.h
#if defined(_UNICODE) || defined(UNICODE)
#define assert(_Expression) \
(void) \
((!!(_Expression)) || \
(_wassert(_CRT_WIDE(#_Expression),_CRT_WIDE(__FILE__),__LINE__),0))
#else /* not unicode */
#define assert(_Expression) \
(void) \
((!!(_Expression)) || \
(_assert(#_Expression,__FILE__,__LINE__),0))
#endif /* _UNICODE||UNICODE */
#defineNDEBUG
即可禁用断言