Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

assert(3HEAD)

Name

assert.h, assert - verify program assertion

Synopsis

#include <assert.h> 

Description

The <assert.h> header defines the assert() macro. It refers to the macro NDEBUG which is not defined in the header. If NDEBUG is defined as a macro name before the inclusion of this header, the assert() macro is defined simply as:

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

Otherwise, the macro behaves as described in assert(3C).

The assert() macro is redefined according to the current state of NDEBUG each time <assert.h> is included.

The assert() macro is implemented as a macro, not as a function. If the macro definition is suppressed in order to access an actual function, the behavior is undefined.

Attributes

See attributes(7) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Interface Stability
Committed
Standard

See Also

assert(3C), attributes(7), standards(7)