The assert macro can be used to detect errors as soon as they occur. This macro is defined in the include file
assert (expression) ;
If expression is false, the program will stop. This indicates which assertion failed.
The really nice thing about this macro is that you can easily get rid of it for the production version of your code, by declaring #define NDEBUG.
This is because the assert macro is defined as:
#ifndef NDEBUG#define assert(THETEST) ...#else#define assert(THETEST) ((void)0)#endif