NAME
assert
—
expression verification
macro
SYNOPSIS
#include
<assert.h>
assert
(expression);
DESCRIPTION
Theassert
()
macro tests the given expression and if it is false, the
calling process is terminated. A diagnostic message, consisting of the text of
the expression, the name of the source file, the line number and the enclosing
function, is written to stderr and the
abort(3) function is called, effectively terminating the program.
If expression is true, the
assert
()
macro does nothing.
The
assert
()
macro may be removed at compile time with the
cc(1)
option -DNDEBUG
.
DIAGNOSTICS
The following diagnostic message is written to stderr if expression is false:
"assertion \"%s\" failed: file \"%s\", line %d, function \"%s\"\n", \ "expression", __FILE__, __LINE__, __func__);
SEE ALSO
STANDARDS
The assert
() macro conforms to
ISO/IEC 9899:1999
(“ISO C99”).
HISTORY
A assert
macro appeared in
Version 7 AT&T UNIX.
Information on the name of the enclosing function appeared in ISO/IEC 9899:1999 (“ISO C99”).