断言assert是仅在debug下有效的宏,当其中的条件为假时,触发错误提示。
使用断言的目的是捕捉不应该发生的非法情况。注意:不要混淆非法情况与错误情况之间的区别,后者的出现是因为代码错误,是一定要作出处理的。
如何使用:
1、在函数的入口处,使用断言检查参数的有效性(合法性)。
2、在编写函数时,要进行反复的思考:“我打算做哪些假定?”一旦确定了的假定,就要使用断言对假定进行检查。比如传入的char*可能为空等。
3、一般教科书都鼓励程序员们进行防错设计,但要记住这种编程风格可能会隐瞒错误。当进行防错设计时,如果“不可能发生”的事情的确发生了,则要使用断言进行报警。
4、包含头文件#include <assert.h>