Rev | Author | # | Line |
---|---|---|---|
1 | perry | 1 | !!NAME |
2 | |||
3 | assert - Abort the program if assertion is false. | ||
3 | CraigBox | 4 | |
1 | perry | 5 | !!SYNOPSIS |
6 | |||
2 | DanielLawson | 7 | #include <assert.h> |
8 | void assert (int ''expression''); | ||
9 | |||
1 | perry | 10 | !!DESCRIPTION |
11 | |||
3 | CraigBox | 12 | __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. |
1 | perry | 13 | |
14 | !!RETURN VALUE | ||
15 | |||
3 | CraigBox | 16 | No value is returned. |
1 | perry | 17 | |
18 | !!CONFORMING TO | ||
19 | |||
3 | CraigBox | 20 | 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. |
1 | perry | 21 | |
22 | !!BUGS | ||
23 | |||
5 | AristotlePagaltzis | 24 | __assert()__ is implemented as a macro; if the expression tested has side-effects, program behaviour will be different depending on whether __NDEBUG__ is defined. This may create [HeisenBug]s which go away when debugging is turned on. |
1 | perry | 25 | |
26 | !!SEE ALSO | ||
27 | |||
28 | exit(3), abort(3) |
lib/blame.php:177: Warning: Invalid argument supplied for foreach() (...repeated 10 times)