O controle, validação e exibição de erros em programas escritos utilizando a linguagem C, fica a cargo de
quem está programando. Porém, C fornece algumas funções para nos auxiliar na verificação de erros internos
das funções que utilizamos.
Para saber qual foi o último erro ocorrido em nossos programas, utilizamos errno que armazena um valor inteiro.
O valor de errno é iniciado como 0 e pode ser modificado internamente por qualquer função disponível
em C.
Também podemos atribuir nossos próprios números de erros utilizando errno atribuindo valores não utilizados
por padrão.
Para utilizarmos errno, mencionado acima, precisamos adicionar sua bibliotecas <errno.h>
como pode ser visto na sintaxe abaixo:
Sintaxe
#include <errno.h>
No exemplos abaixo, vamos tentar abrir um arquivo inexistente que fará com que errno tenha seu
valor alterado para o valor do erro interno ocorrido na função fopen.
Exemplo 1
#include <stdio.h>
#include <errno.h>
int main ()
{
FILE *arq = fopen ("arq.xyz", "r"); //errno 2: No such file or directory
if (arq == NULL)
{
printf("errno: %d \n", errno);
}
fclose (arq);
return (0);
}
Saída
errno: 2
Cada função natica contidas nas bibliotecas nativas da linguagem C irão setar seus valores de erros quando
esses ocorrerem.
Fica a cargo do programador verificar quais possíveis erros previamente, realizar os devidos tratamentos,
informar os erros de forma amigável ao usuário e encerrar o programa.