Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

assert(3c) [opensolaris man page]

assert(3C)						   Standard C Library Functions 						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 message, xyz is the name of the source file and nnn the source line number of the assert() statement. These are respectively 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. 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 attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Standard | +-----------------------------+-----------------------------+ |MT-Level |Safe | +-----------------------------+-----------------------------+ SEE ALSO
cc(1B), abort(3C), gettext(3C), setlocale(3C), attributes(5), standards(5) SunOS 5.11 30 Mar 2005 assert(3C)

Check Out this Related Man Page

ASSERT(3P)						     POSIX Programmer's Manual							ASSERT(3P)

PROLOG
This manual page is part of the POSIX Programmer's Manual. The Linux implementation of this interface may differ (consult the correspond- ing Linux manual page for details of Linux behavior), or the interface may not be implemented on Linux. NAME
assert - insert program diagnostics SYNOPSIS
#include <assert.h> void assert(scalar expression); DESCRIPTION
The assert() macro shall insert diagnostics into programs; it shall expand to a void expression. When it is executed, if expression (which shall have a scalar type) is false (that is, compares equal to 0), assert() shall write information about the particular call that failed on stderr and shall call abort(). The information written about the call that failed shall include the text of the argument, the name of the source file, the source file line number, and the name of the enclosing function; the latter are, respectively, the values of the preprocessing macros __FILE__ and __LINE__ and of the identifier __func__. Forcing a definition of the name NDEBUG, either from the compiler command line or with the preprocessor control statement #define NDEBUG ahead of the #include <assert.h> statement, shall stop assertions from being compiled into the program. RETURN VALUE
The assert() macro shall not return a value. ERRORS
No errors are defined. The following sections are informative. EXAMPLES
None. APPLICATION USAGE
None. RATIONALE
None. FUTURE DIRECTIONS
None. SEE ALSO
abort(), stderr, the Base Definitions volume of IEEE Std 1003.1-2001, <assert.h> COPYRIGHT
Portions of this text are reprinted and reproduced in electronic form from IEEE Std 1003.1, 2003 Edition, Standard for Information Technol- ogy -- Portable Operating System Interface (POSIX), The Open Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of Electrical and Electronics Engineers, Inc and The Open Group. In the event of any discrepancy between this version and the original IEEE and The Open Group Standard, the original IEEE and The Open Group Standard is the referee document. The original Standard can be obtained online at http://www.opengroup.org/unix/online.html . IEEE
/The Open Group 2003 ASSERT(3P)
Man Page