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, por exemplo. 
            
            
                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 a seguir:
            
            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 2 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 contida na biblioteca nativa da linguagem C irá setar seu valor de erro 
                quando ocorrer. 
            
            
                Fica a cargo do programador verificar previamente quais são os possíveis erros, realizar 
                os devidos tratamentos, informar os erros de forma amigável ao usuário e encerrar 
                o programa.