The <assert.h> include file defines the assert macro. You must include assert.h when you use assert.
The definition of assert is in an #ifndef preprocessor block. If you have not defined the identifier NDEBUG through a #define directive or on the compilation command, the assert macro tests the assertion expression. If the assertion is false, the system prints a message to stderr, and raises an abort signal for the program. The system also does a Dump Job (DMPJOB) OUTPUT(*PRINT) when the assertion is false.
If NDEBUG is defined, assert is defined to do nothing. You can suppress program assertions by defining NDEBUG.
(C) Copyright IBM Corporation 1992, 2006. All Rights Reserved.