Provided by: manpages-es_1.55-10_all bug

NOMBRE

       assert - aborta el programa si la expresion es falsa.

SINOPSIS

       #include <assert.h>

       void assert (int expression);

DESCRIPCI'ON

       Si  la macro NDEBUG estaba definida en el momento en que <assert.h> fue
       incluido por ultima vez, la macro assert() no genera ningun  codigo,  y
       por  tanto  no hace nada.  En caso contrario, la macro assert() imprime
       un mensaje de error a la salida estandar y termina el programa llamando
       a  abort()  si  expression  es falsa (es decir, es igual a cero).  Esto
       solo sucede cuando la macro NDEBUG esta sin definir.

       El proposito de esta macro es ayudar al programador a encontrar  fallos
       en su programa. El mensaje "aserto fallido en el fichero foo.c, funcion
       do_bar(), linea 1287" no es de ayuda en absoluto para un usuario.

VALOR DEVUELTO

       No se devuelve ningun valor.

CONFORME A

       ISO 9899 (ANSI C). En el estandar de 1990, expression debe ser de  tipo
       int  ,  teniendo  un comportamiento indefinido si no es asi, pero en el
       estandar de 1999 puede tener cualquier tipo escalar.

FALLOS

       assert() es implementada como un  macro;  si  la  expresion  comprobada
       tiene  efectos  laterales,  el  comportamiento  del  programa puede ser
       diferente dependiendo de si NDEBUG esta definida o no. Esto puede crear
       fallos  indeterminados  (Heisenbugs) que no se dan cuando la depuracion
       esta activada.

V'EASE TAMBI'EN

       exit(3), abort(3), assert_perror(3)