断言是测试某个变量是否具有正确值的有用的调试工具。
assert宏测试时表达式的值
—如果表达式的值是0(假),则assert打印错误信息,并调用函数abort()以结束程序执行。
—assert宏在assert.h头文件中定义。
断言实例:
#include<iostream> #include<assert.h> using namespace std; int main() { int x; cout<<"x:"; cin>>x; assert(x < 10); cout<<"x="<<x<<endl; return 0; }
忽略断言
//忽略断言 //定义符号常量NDEBUG可忽略后续断言 #define NDEBUG #include<iostream> #include<assert.h> using namespace std; int main() { int x; cout<<"x:"; cin>>x; assert(x < 10); cout<<"x="<<x<<endl; return 0; }