assert---Macro for Debugging Diagnostics#include <assert.h> #include <stdlib.h> void assert(int expression);Description
When expression evaluates to false (zero), assert
calls abort, after first printing a message showing what
failed and where:
Assertion failed: expression, file filename, line lineno
The macro is defined to permit you to turn off all uses of
assert at compile time by defining NDEBUG as a
preprocessor variable. If you do this, the assert macro
expands to
(void(0))
Returns
assert does not return a value.
Portability
The assert macro is required by ANSI, as is the behavior
when NDEBUG is defined.
Supporting OS subroutines required (only if enabled): close, fstat,
getpid, isatty, kill, lseek, read, sbrk, write.