El archivo de cabecera <errno.h> en el lenguaje de programación C define macros para informar y recuperar condiciones de error utilizando el símbolo errno (forma abreviada de "error number" o número de error).
¿Cómo Funciona errno?
La variable errno actúa como una variable entera. Al iniciar el programa, su valor es cero y las funciones de la biblioteca estándar solo almacenan valores mayores que cero cuando detectan un fallo. La mayoría de las funciones indican que ha ocurrido un error devolviendo un valor especial, como NULL para punteros o -1 para enteros.
Hoy en día, las macros se utilizan para permitir el soporte multi-hilo (multithreading), asegurando que cada hilo tenga su propio número de error local.
Códigos de Error y POSIX
El estándar de C solo requiere un número mínimo de macros de códigos de error definidos, pero los sistemas operativos compatibles con POSIX (como Linux o Solaris) incluyen muchos otros valores muy utilizados, tales como EACCES.
Traducción de Errores
El valor numérico de un error se puede traducir a una cadena descriptiva utilizando funciones como:
- strerror (definida en
<string.h>) - perror (definida en
<stdio.h>) - strerror_r para entornos concurrentes o multi-hilo

