errno
Diferenças
Aqui você vê as diferenças entre duas revisões dessa página.
— | errno [2023/09/12 16:14] (atual) – criada - edição externa 127.0.0.1 | ||
---|---|---|---|
Linha 1: | Linha 1: | ||
+ | ====== Tratamento de Erros ====== | ||
+ | A maioria das funções devolve somente uma indicação de que houve erro em sua execução, seja através de um valor negativo, seja através de um ponteiro nulo. | ||
+ | |||
+ | O erro ocorrido na função é armazenado na variável **errno**, definida internamente no sistema e disponibilizada no programa através da colocação do arquivo errno.h na compilação do programa. Dentro deste arquivo //header// também são definidas as constantes mnemônicas dos possíveis erros que podem acontecer nas funções. | ||
+ | |||
+ | Em caso de se necessitar testar um erro específico, | ||
+ | |||
+ | Um fator importante de ser citado é que as funções não zeram o valor da variável **errno** caso não ocorra erro nas funções. Isto obriga ao programador usar a variável **errno** somente depois de ter verificado se a função realmente retornou erro. | ||
+ | |||
+ | <code c> | ||
+ | #include < | ||
+ | #include < | ||
+ | #include < | ||
+ | |||
+ | int main (void) | ||
+ | { | ||
+ | int iFileDescriptor; | ||
+ | |||
+ | | ||
+ | | ||
+ | |||
+ | if (iFileDescriptor < 0) | ||
+ | { | ||
+ | fprintf(stderr, | ||
+ | } | ||
+ | |||
+ | | ||
+ | | ||
+ | |||
+ | | ||
+ | pois a variável continua com o valor do último erro ocorrido. */ | ||
+ | | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | ===== Outras Funções ===== | ||
+ | * [[strerror]] | ||
+ | * [[perror]] | ||
+ | |||
+ | |||
errno.txt · Última modificação: 2023/09/12 16:14 por 127.0.0.1