assert 又称断言,需要包含头文件 assert.h
用于在运行时确保程序符合指定条件,如果不符合,就报错终止运行。
assert(p != NULL);
上面代码在程序运行到这一行语句时,验证变量 p 是否等于 NULL。如果确实不等于 NULL ,程序继续运行,否则就会终止运行,并且给出报错信息提示。
assert()宏接受一个表达式作为参数。如果该表达式为真 (返回值非零),assert()不会产生任何作用,程序继续运行。如果该表达式为假 (返回值为零), assert() 就会报错。
assert(p != NULL);
if(p ! = NULL)
{
}
else
{
}
// 二者功能一致,甚至前者的功能更好
当不需要assert进行程序报错时,我们可以使用 #define NDEBUG 进行关闭