Elementos básicos

2009/07/10
A continuación, el esqueleto de un programa:

  • Comentarios
  • #include y archivos de cabecera
  • La función main()
  • El caracter de nueva línea (\n)
  • Puntos y comas, llaves
  • Compilación

Ejemplo:
-----------------------------------------------------

/* Esto es un comentario */
// También es un comentario

#include '<'stdio.h'>' ||| // <---NO lleva comillas.
main()
{
|||||||
printf (" ¡Mirad! ¡Mi primer programa! \n");
|||||||return 0;
}

-----------------------------------------------------

Comentarios

Lo primero que vemos al examinar el ejemplo son las 2 formas de escribir comentarios en C. La primera, con un signo de apertura (/*) y uno de cierre (*/). La segunda, asimilada de C++, consta solamente de dos barras.

El motivo y la utilidad de los comentarios es principalmente como herramienta de aclaración, recordatorio, o apunte sobre el programa. Es decir, como documentación propia. Existe la posibilidad de que tiempo después de haber desarrollado un programa, el programador se olvide por completo de él; cuando el programador retome su programa, los comentarios que haya hecho en el código le harán más sencillo entender y recordar exactamente qué había hecho. Otra razón sería explicar brevemente lo que alguna parte del código hace. Esto ayuda mucho cuando alguien más tiene que ver el código. Incluso al depurar, el empleo de comentarios es por demás útil.

Los comentarios no afectan sobre el funcionamiento del binario ejecutable ni sobre el tamaño del mismo, así como tampoco afectan de intromisión al código. La razón es que el compilador ignora todo lo que haya entre las marcas de comentarios (/* */), o entre marca y fin de línea (// ).


#include y archivos de cabecera

En el ejemplo, la primera línea valiosa de código es #include

La instrucción #include le comunica al preprocesador de C (un programa llamado por el compilador) que hay que buscar un archivo y colocar el contenido en el lugar correspondiente. stdio.h es ése archivo. El lugar de búsqueda obedece a la indicación que rodea a stdio.h. Si los signos son comillas dobles ("stdio,h"), el preprocesador buscará el archivo en el directorio actual. Por el contrario, si son llaves lo que rodean el nombre del archivo (), el preprocesador buscará en un directorio diferente del actual (/usr/include y c:\Compilador\include son 2 ejemplos).

stdio.h es quizá uno de los archivos fundamentales de un programa: sus funciones se encargan de la entrada y salida. Provee de funciones como printf(). Su nombre significa "standard input-output header file". Y sí, fue escrita por el desarrollador del compilador (por lo que es posible que en distintos compiladores haya diferencias mínimas).

Función main()

Es la función que se llama cuando se ejecuta el programa. Cada programa debe tener una y sólo una función principal, pues si hubiera más de una, ¿por dónde comenzaría el programa? De todos modos el compilador detectaría un error como ése. Es la función de donde parte el funcionamiento del programa: al llegar a la llave que cierra la función, el programa termina de ejecutarse (aunque hay otros modos de salir del programa).

Esta función puede estar colocada al principio, en medio o al final del fichero donde se escribe el código. Da igual. Sin embargo, por claridad es recomendable colocar la función al principio.

En el ejemplo sólo existe la función main(). En programas más complejos es conveniente dividir las tareas y emplear mas funciones.


Caracter de línea nueva (\n)

Una de las cosas que más escribo es el símbolo '\n', siempre con printf(). Lo menciono ahora porque su uso es frecuente y sería útil familiarizarse con él.

Básicamente, y según cómo se emplee, hace 2 cosas: generar el fín de línea y generar una línea nueva.

Ejemplos:

-----------------------------------------------------------------------
// 1)
#include '<'stdio.h'>'
main()
{
|||||||printf("\n\n\n Apuesto a que el prompt terminará pegado a mí");
}


Ese código se mostraría así:


Tres líneas vacías. Al final se junta con el prompt.
-----------------------------------------------------------------------

// 2)
#include '<'stdio.h'>'
main()
{
|||||||
printf(" Hola, enfermera \n\n");

}

Visualización:

Muestra el texto y termina la línea. Luego, línea vacía. Observe el prompt ahora.

-----------------------------------------------------------------------


Puntos y comas y llaves

En C, la mayoría de las sentencias terminan en punto y coma.

x=y;
a = b + c + d * 5;
sqrt(num);

Excepto al declarar una función, así como tampoco en la llave inicial ni final de cualquier función o estructura.

int calculo()
{
|||||||x=y; a = b + c + d * 5; sqrt(num);
}

Observe cómo las sentencias fueran colocadas intencionalmente en la misma línea. Esto es válido, ya que la función de los punto y coma (;) es precisamente reconocer el final de una sentencia. Aunque... No es muy agradable leer código escrito así.

Nota: ¡Recuerde la indentación! Por favor escriba con sangría.


Compilación

Por lo pronto, y tratándose de archivos pequeños, este proceso es bastante sencillo una vez que se conoce.

En mi caso, desde la línea de comandos hago esto:
1) Me coloco en el directorio donde esté guardado el código fuente
2) Llamo al compilador, escribiendo el nombre del programa como parámetro.
3) Ejecuto.
4) Si es necesario, depuro y vuelvo al paso 1.

Al final, lo que escribiría sería algo como:
$ gcc NombrePrograma.c -o NombreNuevo.loquesea

Si usted utiliza otro compilador, averigüe cuáles son los detalles y especificaciones de su compilador y los pasos a seguir.

0 comentarios:

Publicar un comentario