断言库

头文件  assert.h

作用:辅助调试程序的小型库

组成宏:assert()

assert()的调用:接受一个整型表达式作为参数(通常是一个条件表达式或逻辑表达式),表达式求值为假(非零),assert()在标准错误输出流写入一条错误信息,接着调用abort()函数(头文件为stdlib.h)终止程序 。终止后会显示失败的测试、包含测试的文件名和行号。

使用assert 的好处:能自动标识文件和出问题的行号。可以在assert.h头文件声明前加#define NDEBUG,来达到禁用文件中所用assert()的目的。

      

assert()在运行时进行检查,c11新增的_Static_assert声明可在编译时检查assert()表达式,使程序不能通过编译。

_Static_assert()接受两个参数:整型常量表达式和字符串。

第一个表达式求值为0或_False时,编译器会显示字符串,并不编译该程序。效率比之assert()更高。

posted @ 2020-02-26 17:27  我想去故宫  阅读(165)  评论(0)    收藏  举报