C Standard Library 简明教程

C Library - <assert.h>

标准 C 库的 assert.h 头文件提供了一个称为 assert 的宏,该宏可用于验证程序做出的假设,并在该假设为假时打印诊断消息。

已定义的宏 assert 指的是另一个宏 NDEBUG ,它不属于 <assert.h> 的一部分。如果在包含 <assert.h> 时在源文件中将 NDEBUG 定义为宏名称,则 assert 宏将按如下方式定义 −

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

Library Macros

以下是头 assert.h 中定义的唯一函数 −

Sr.No.

Function & Description

1

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

2

static_assert(boolean_expression, message) 如果常量表达式的值为 false,则此宏会发出编译时诊断信息。