assert,中文意思是断言,在C语言中是一种宏,不是函数,常用于调试,含于头文件<assert.h>中。使用语法:assert(judgement),括号内加入判断表达,表明此处断言表达式成立。若事实上成立的话,则断言为真,程序照常运行。若事实上表达式不成立,断言失败,则程序崩溃,无法正常运行。若要禁用断言,使其无效,需在#include<assert.h>前加上#define NDEBUG 。这样断言语句即使未被删除,效果等同于被注释掉了一样。
#include<stdio.h> #define NDEBUG //必须放在assert.h之前才有效 这样会忽略所有的断言 #include<assert.h> int main() { int a=2; assert(a!=2);//此处断言a不等于2 如果断言错误,程序崩溃 printf("Normal!\n"); return 0; }
时间: 2024-11-25 10:47:40