nextupprevious
Next: 16.1. Reglas de tipo general Up: Índice Previous: 15.3. #if, #ifdef, #ifndef, #else y #endif


16. Convenios a la hora de escribir en C

Existen una serie de convenios que no pertenecen de por sí al lenguaje C, pero que se usan para hacer más legibles los programas, sobre todo para programadores que no han realizado la implementación.
Un buen programador debería codificar aprovechando toda oportunidad que asegure que su código es claro y fácil de comprender. No debe utilizar "trucos inteligentes" a los cuales C se presta con facilidad. Considérese a mondo de ejemplo los siguientes fragmentos de código:

:
while ('\n' != *p++=*q++);

:
while (1) {
 *destination_ptr = *source_ptr;
 destination_ptr++;
 source_ptr++;
 if (*destination_ptr == '\n')
  break; /* abandonar el bucle si se ha acabado */
}

Aunque la segunda versión es más larga, es más clara y fácil de comprender. Incluso un programador sin demasiada experiencia en C puede entender que este código tiene algo que ver con mover datos desde una fuente hacia un destino. Al compilador no le importa cuál de las dos versiones se utilice: un buen compilador generará el mismo código máquina para ambas. Es el programador quien se beneficia de la claridad del código.



nextupprevious
Next: 16.1. Reglas de tipo general Up: Índice Previous: 15.3. #if, #ifdef, #ifndef, #else y #endif


Última modificación: 26/4/1999


Copyright © 1999, F. de Sande - Centro Superior de Informática, Universidad de La Laguna.
All rights reserved.