Section: Funciones de biblioteca (3)
Updated: 30 Marzo 1998
Index Return to Main
Contents
errno - número del último error
#include <errno.h>
Algunas llamadas al sistema (y algunas funciones de biblioteca) dan un valor al entero errno para indicar qué ha ido mal. Su valor sólo es significativo cuando la llamada devolvió un error (usualmente -1) y cuando una función de biblioteca que acabe bien tenga permitido cambiar errno.
Algunas veces, cuando una función tambíen puede devolver -1 como valor válido, se debe poner errno a cero antes de la llamada, para poder detectar posibles errores.
errno se define en el estándar ISO de C como un lvalor (valor de lado izquierdo) modificable de tipo int y no se debe declarar de forma explícita; errno puede ser una macro. errno es "local en hilo"; asignarle un valor en un hilo no afecta al valor que tenga en ningún otro hilo.
Los números de error válidos son todos no cero; ninguna función de biblioteca asigna nunca un valor cero a errno. Todos los nombres de error especificados por POSIX.1 deben tener valores distintos.
POSIX.1 (edición de 1996) lista los siguientes nombres de error simbólicos. De éstos, EDOM y ERANGE existen en el estándar ISO de C. La enmienda 1 del ISO C define el número de error adicional EILSEQ para codificar los errores en múltiples bytes o caracteres extendidos.
Otras implementaciones de Unix devuelven muchos otros tipos de error. System V devuelve ETXTBSY (fichero de código ocupado) si se intenta ejecutar una llamada exec() sobre un fichero que actualmente está abierto para escritura. Linux también devuelve este error si se intenta tener un fichero tanto asociado en memoria con VM_DENYWRITE como abierto para escritura.
(3), strerror(3)
This document was created by man2html, using
the manual pages.
Time: 06:16:22 GMT, January 22, 2005