ASSERT(3) Library Functions Manual ASSERT(3)

assertexpression verification macro

#include <assert.h>

assert(expression);

The () macro tests the given expression and if it is false, the calling process is terminated. A diagnostic message is written to stderr and the abort(3) function is called, effectively terminating the program.

If expression is true, the () macro does nothing.

The () macro may be removed at compile time with the cc(1) option -DNDEBUG.

The following diagnostic message is written to stderr if expression is false:

"assertion \"%s\" failed: file \"%s\", line %d\n", \
		    "expression", __FILE__, __LINE__);

cc(1), abort(3)

The assert() macro conforms to ANSI X3.159-1989 (“ANSI C89”).

A assert macro appeared in Version 6 AT&T UNIX.

June 9, 1993 macOS 15.2