assert(3)

assert3

Expression verification macro

Usage

#include <assert.h>

assert(expression);

Overview

The assert() 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 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\n", \
		    "expression", __FILE__, __LINE__);

Releases

Unchanged in 163 releases since Mac OS X 10.0.

  1. 10.0–26.5

Standards

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

History

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

From Libc 1752.120.2 in macOS 26.5. Parsed by carta from the page's mdoc source.