assert()函数

assert单词是断言的意思,assert宏的原型定义在<assert.h>中,其作用是如果它的条件返回错误,则终止程序执行。

 

函数原型为void assert(int expression);

 

意思就是计算表达式expression,如果其值为假,那么它先向stderr打印一条出错信息,然后通过调用abort来终止程序运行。

例如:

int divide(int a,int b)
{
    assert(b != 0);
    return a / b;
}


注意在用assert函数时,每一个assert只检验一个条件,因为同时检验多个条件时,如果断言失败,无法直观的判断是哪个条件失败。

 

例如:

assert(i >= 0 && i < N);

 

改为:

assert(i >= 0);
assert(i < N);



 

你可能感兴趣的:(assert()函数)