C/errno: Diferenzas entre revisións

Contido eliminado Contido engadido
Gallaecio (conversa | contribucións)
mSen resumo de edición
m Bot: Cambios estética
 
Liña 32:
/*********************************************************************
* O resto do código a partires da aquí pode asumir que se asignarán *
* 2.000.000.000 de carácteres satisfactoriamente... *
*********************************************************************/
free(ptr); // Isto, como xa veremos máis adiante, libera a memoria reservada
Liña 42:
O anterior fragmento de código amosa o uso do valor devolto pola función da biblioteca <code>malloc</code> para buscar erros. Moitas funcións de bibliotecas devolven valores que marcan erros, e deste xeito debería ser comprobado polo astuto programador. No fragmento de código, un punteiro nulo (<code>NULL</code>) devolveu dos sinais de <code>malloc</code> un erro na asignación, polo que se saíu do programa. En implementacións máis complicadas, o programa podería tratar de manexar o erro e tratar de recuperarse da asignación de memoria fallida.
 
== Manexo de erros ao dividir por cero ==
Un erro habitual cometido polos programadores en C é o de non comprobar se un divisor é cero antes dun comando de división. O seguinte código produce un erro de procesamento, e a miúdo a saída do programa.
<source lang="c">
Liña 68:
/***********************************************************
* Exemplo de manexo deste erro. Escríbeselle unha mensaxe *
* a stderr, e sáese cun erro. *
***********************************************************/
fprintf(stderr, "Unha división por cero! Abortando...\n");
Liña 83:
 
<!-- Categorías: -->
 
[[Categoría:C ─ errno|errno]]