C/errno: Diferenzas entre revisións

Contido eliminado Contido engadido
Gallaecio (conversa | contribucións)
m Programación en C/Manexo dos erros movida a Programación en C/Manexo de erros
Gallaecio (conversa | contribucións)
mSen resumo de edición
Liña 3:
A linguaxce de programación C non conta con soporte nativo para manexo de erros (tamén coñecido como manexo de excepcións). Debe ser o propio programador o que preveña a ocurrencia de erros en primeiro lugar, a miúdo poñendo a proba os posaibles valores das funcións. <code>-1</code> e <code>NULL</code> úsanse en moitas funcións tales coma <code>socket()</code> ou <code>malloc()</code> respectivamente para indicar problemas dos que o programador xa debería saber. Nun caso peor en que o erro é inevitable e non hai xeito de recuperarse del, o programador en C adoita tratar de rexistralo e "elegantemente" termina o programa.
 
Hai unha variable externa chamada "<code>errno</code>", accesible polos programas tras incluír a biblioteca <code><errno.h></code>. O ficheiro ven da definición de posibles erros que poden ocorrer en algúns sistemas operativos cando estes solicitan recursos, coma Linux, en cuxo caso a definición está en <code>include/asm-generic/errno.h</code>. Esta variable indexa as descricións dos erros, accesibles pola función "<code>strerror( errno )</code>".
 
O seguinte código examina o valor a devolver pola función da biblioteca <code>malloc</code> para ver se a asignación dinámica de memoria se completa axeitadamente: