#include <windows.h> //#define NDEBUG #include <assert.h> int main() { int n=9; assert(n!=9);//assert()括号中的表达式if true则不会出现端断言错误,assertion failed system("pause"); return 0; }void assert( int expression );assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程序运行。
已放弃使用assert()的缺点是,频繁的调用会极大的影响程序的性能,增加额外的开销。在调试结束后,可以通过在包含#include <assert.h>的语句之前插入 #define NDEBUG 来禁用assert调用
作用与意义:在函数开始处检验传入参数的合法性,在可能出错的地方使用