ASSERT.H(3HEAD) Headers ASSERT.H(3HEAD)
assert.h, assert - verify program assertion
#include <assert.h>
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.
The <assert.h> header also defines the static_assert() macro. This
macros is similar to assert(); however, while assert() is used at
program execution time, static_assert() is evaluated and checked by
the compiler at compilation-time.
See attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Standard |
+--------------------+-----------------+
assert(3C), attributes(7), standards(7)
January 14, 2015 ASSERT.H(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.
The <assert.h> header also defines the static_assert() macro. This
macros is similar to assert(); however, while assert() is used at
program execution time, static_assert() is evaluated and checked by
the compiler at compilation-time.
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Standard |
+--------------------+-----------------+
SEE ALSO
assert(3C), attributes(7), standards(7)
January 14, 2015 ASSERT.H(3HEAD)