*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Linux man pages -> assert (3)              
Title
Content
Arch
Section
 

ASSERT(3)

Contents


NAME    [Toc]    [Back]

       assert - Abort the program if assertion is false.

SYNOPSIS    [Toc]    [Back]

       #include <assert.h>

       void assert (int expression);

DESCRIPTION    [Toc]    [Back]

       assert()  prints an error message to standard output and terminates the
       program by calling abort() if expression is false (i.e., compares equal
       to  zero).   This only happens when the macro NDEBUG was undefined when
       <assert.h> was last included.

RETURN VALUE    [Toc]    [Back]

       No value is returned.

CONFORMING TO    [Toc]    [Back]

       ISO9899 (ANSI C).  In the 1990 standard, expression is required	to  be
       of  type  int  and  undefined behavior results if it is not, but in the
       1999 standard it may have any scalar type.

BUGS    [Toc]    [Back]

       assert() is implemented as a macro; if the expression tested has side -
       effects,  program behaviour will be different depending on whether NDE-
       BUG is defined. This may create Heisenbugs which go away when debugging
       is turned on.

SEE ALSO    [Toc]    [Back]

      
      
       exit(3), abort(3)



GNU				  1993-04-04			     ASSERT(3)
[ Back ]
 Similar pages
Name OS Title
assert IRIX verify program assertion
break IRIX Abort looping command
false OpenBSD return false value
false FreeBSD return false value
ENSURE FreeBSD assertion system
set_assertion_failure_callback FreeBSD assertion system
assertion_type_to_text FreeBSD assertion system
REQUIRE_ERR FreeBSD assertion system
REQUIRE FreeBSD assertion system
INVARIANT_ERR FreeBSD assertion system
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service