CC++ 标准库 assert.h 中的诊断宏

CC++ 标准库 assert.h 中的诊断宏,第1张

C/C++ 标准库 assert.h 中的诊断宏 C 标准库 assert.h

C 标准库的 assert.h头文件提供了一个名为 assert 的宏,它可用于验证程序做出的假设,并在假设为假时输出诊断消息。
定义的宏 assert 指向另一个宏 NDEBUG,宏 NDEBUG 不是 的一部分。如果已在引用 的源文件中定义 NDEBUG 为宏名称,则 assert 宏的定义如下:

#define assert(ignore) ((void)0)
库宏

下面是头文件 assert.h 中定义的唯一的函数:

void assert(int expression)
//这实际上是一个宏,不是一个函数,可用于在 C 程序中添加诊断。

ASSERT() 是一个调试程序时经常使用的宏,在程序运行时它计算括号内的表达式,如果表达式为 FALSE (0), 程序将报告错误,并终止执行。如果表达式不为 0,则继续执行后面的语句。这个宏通常原来判断程序中是否出现了明显非法的数据,如果出现了终止程序以免导致严重后果,同时也便于查找错误。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5520655.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-13
下一篇 2022-12-13

发表评论

登录后才能评论

评论列表(0条)

保存