assert(3C)




NAME

     assert - verify program assertion


SYNOPSIS

     #include <assert.h>

     void assert(int expression);


DESCRIPTION

     The assert() macro inserts  diagnostics  into  applications.
     When  executed,  if  expression  is  FALSE  (zero), assert()
     prints the error message

     Assertion failed: expression, file xyz, line nnn

     on the standard error output and aborts. In the  error  mes-
     sage,  xyz is the name of the source file and nnn the source
     line number of the assert()  statement.  These  are  respec-
     tively  the  values  of the preprocessor macros __FILE__ and
     __LINE__.

     Since assert() is implemented as a macro, the expression may
     not contain any string literals.

     Compiling  with  the  preprocessor  option   -DNDEBUG   (see
     cc(1B)),  or with the preprocessor control statement #define
     NDEBUG ahead of the #include <assert.h> statement, will stop
     assertions from being compiled into the program.

     If the application is linked with -lintl,  messages  printed
     from  this  function are in the native language specified by
     the LC_MESSAGES locale category; see setlocale(3C).


ATTRIBUTES

     See attributes(5) for descriptions of the  following  attri-
     butes:

     ____________________________________________________________
    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    |_____________________________|_____________________________|
    | MT-Level                    | Safe                        |
    |_____________________________|_____________________________|


SEE ALSO

     cc(1B), abort(3C), gettext(3C), setlocale(3C), attributes(5)


Man(1) output converted with man2html