C/Estrutura e estilo: Diferenzas entre revisións

Contido eliminado Contido engadido
Gallaecio (conversa | contribucións)
m Camiño de código --> ruta de código
Gallaecio (conversa | contribucións)
→‎Comentarios: Remato a tradución do capítulo
Liña 158:
De xeito similar, deberías incluír sempre un comentario de máis dunha liña ao comezo dunha función, para explicar o nome da función, os datos de entrada que vai recibir e o modo en que os vai recibir, a saída de datos, e o procedemento que debe realizar a función. Deixa sempre os detalles técnicos para rutas de código individuais dentro do programa, pois será máis doado identificar erros.
 
A descrición dunha función debería de ser algo semellante a isto:
A function descriptor should look something like:
 
/* FunctionFunción : int hworldolamundo (int i,int j)
InputEntrada : int i (Numbernúmero ofde linesliñas), int jl (Numbernúmero ofde instancesinstancias perpor lineliña)
OutputSaída : 0 (onse todo vai successben)
ProcedureProcedemento: PrintsImprime "Hello,Ola Worldmundo!" jl timesveces, and ae newunha linenova toliña standardde outputsaída overpara i linesliñas.
*/
 
Este sistema permite unha explicación punto por punto do que debería facer a función. Podes despois entrar en detalles sobre como se archiva despois cada aspecto do programa no programa.
This system allows for an at-a-glance explanation of what the function should do. You can then go into detail over how each aspect of the program is achieved later on in the program.
 
Para rematar, se che gustan as presentacións de calidade, este sistema de comentario de máis dunha liña, permíteche engadir bordos con asteriscos ao teu comentario. Isto fainos resaltar moito máis do que resaltarían sen o bordo (especialmente soterrados baixo unha grande cantidade de código). Debería ser algo coma:
Finally, if you like to have aesthetically-pleasing source code, the multi-line comment system allows for the easy addition of starry borders to your comment. These make the comments stand out much more than they would without the border (especially buried deep in source code). They should take a format similar to:
 
/***************************************
* ThisIsto isven asendo multiun line commentcomentario *
* That is surrounded by a de máis dunha liña rodeado por *
* Cool, starry border! un elegante bordo de asteriscos *
* que nin os de Zara. *
***************************************/
 
Aplicando isto ao noso programa orixinal:
 
<font style="color:#bc5ff8">#include</font> <font style="color:#ff48ff"><stdio.h></font>
Applied to our original program, we can now include a much more descriptive and readable source code:
'''<font style="color:#1b991b">int</font>''' main('''<font style="color:#1b991b">void</font>''')
{
31 <font style="color:blue">/************************************************************************************
32 * Función * Function: int main(void) *
33 * Entrada * Input : none ningunha *
34 * OutputSaída : Returns 0 on success : Devolve 0 se todo vai ben *
* Procedemento: Imprime "Ola mundo!" e unha nova liña, e logo sae. *
36 ************************************************************************************/</font>
'''<font style="color:#1b991b">int</font>''' i=<font style="color:#ff48ff">0</font>; <font style="color:blue">// Variable temporal usada para o bucle "for"</font>
printf(<font style="color:#ff48ff">"Ola mundo!</font><font style="color:#ff48ff">"</font>);
<font style="color:blue">/* Bucle FOR (int i)
Imprime unha nova liña e sae. */</font>
'''<font style="color:#bb2323">for</font>''' (i=<font style="color:#ff48ff">0</font>; i<<font style="color:#ff48ff">1</font>; i++)
{
printf(<font style="color:#ff48ff">"</font><font style="color:#a7a0d7">\n</font><font style="color:#ff48ff">"</font>);
'''<font style="color:#bb2323">break</font>'''; <font style="color:blue">// Saída do bucle "for"</font>
}
'''<font style="color:#bb2323">return</font>''' <font style="color:#ff48ff">0</font>;
}
 
Isto permite a calquera usuario do programa unha forma fácil de entender o que fai o código, e como funciona. Tamén prevé confusións ocn nomes similares de funcións.
 
10 #include <stdio.h>
11
20 int main(void)
30 {
31 /************************************************************************************
32 * Function: int main(void) *
33 * Input : none *
34 * Output : Returns 0 on success *
35 * Procedure: Prints "Hello, World!" and a new line to standard output then exits. *
36 ************************************************************************************/
40 int i=0; //Temporary variable used for 'for' loop.
41
50 printf("Hello, World!");
51
52 /* FOR LOOP (int i)
53 Prints a new line to standard output, and exits */
60 for (i=0; i<1; i++)
61 {
70 printf("\n");
80 break; //Exits 'for' loop.
90 }
91
100 return 0;
110 }
 
This will allow any outside users of the program an easy way to understand what the code does, and how it works. It also prevents confusion with other like-named functions.
 
== Examples ==