assert - aborta el programa si la expresión es falsa
Biblioteca Estándar C (
libc,
-lc)
#include <assert.h>
void assert(scalar expression);
This macro can help programmers find bugs in their programs, or handle
exceptional cases via a crash that will produce limited debugging output.
If
expression is false (i.e., compares equal to zero),
assert()
prints an error message to standard error and terminates the program by
calling
abort(3). The error message includes the name of the file and
function containing the
assert() call, the source code line number of
the call, and the text of the argument; something like:
prog: some_file.c:16: some_func: Assertion `val == 0' failed.
If the macro
NDEBUG is defined at the moment
<assert.h> was
last included, the macro
assert() generates no code, and hence does
nothing at all. It is not recommended to define
NDEBUG if using
assert() to detect error conditions since the software may behave
non-deterministically.
No se devuelve ningún valor.
Para obtener una explicación de los términos usados en esta
sección, véase
attributes(7).
Interfaz |
Atributo |
Valor |
assert() |
Seguridad del hilo |
Multi-hilo seguro |
POSIX.1-2001, POSIX.1-2008, C99.
assert() es implementada como un macro; si la expresión comprobada
tiene efectos laterales, el comportamiento del programa puede ser diferente
dependiendo de si
NDEBUG está definida o no. Esto puede crear
fallos indeterminados (Heisenbugs) que no se dan cuando la depuración
está activada.
abort(3),
assert_perror(3),
exit(3)
La traducción al español de esta página del manual fue
creada por Sebastian Desimone <
[email protected]>, Carlos Costa
Portela <
[email protected]> y Miguel Pérez Ibars
<
[email protected]>
Esta traducción es documentación libre; lea la
GNU
General Public License Version 3 o posterior con respecto a las
condiciones de copyright. No existe NINGUNA RESPONSABILIDAD.
Si encuentra algún error en la traducción de esta página
del manual, envíe un correo electrónico a
[email protected]