assert(3X) LIBRARY FUNCTIONS assert(3X)
NAME
assert - verify program assertion
SYNOPSIS
#include <assert.h>
void assert (int expression);
DESCRIPTION
This macro is useful for putting diagnostics into programs.
When it is executed, if expression is false (zero), assert
prints
Assertion failed: expression, file xyz, line nnn
on the standard error output and aborts. In the error mes-
sage, xyz is the name of the source file and nnn the source
line number of the assert statement. The latter are respec-
tively the values of the preprocessor macros __FILE__ and
__LINE__.
Compiling with the preprocessor option -DNDEBUG [see cc(1)],
or with the preprocessor control statement #define NDEBUG
ahead of the #include <assert.h> statement, will stop asser-
tions from being compiled into the program.
SEE ALSO
cc(1), abort(3C).
NOTES
Since assert is implemented as a macro, the expression may
not contain any string literals.
1