1. PONER A PUNTO EL PROGRAMA
MEDIANTE EL USO DE UN EDITOR DE
LENGUAJE DE PROGRAMACIÓN
ESTRUCTURADO
2. Fases de la Puesta a Punto de un Programa en Lenguaje C
Para convertir un algoritmo en un programa, se deben llevar a cabo las siguientes fases de puesta
a punto:
EEDDIICCIIÓÓNN:: En esta primera fase, el programador debe convertir el
algoritmo que haya diseñado en instrucciones escritas en C.
Si un programa escrito en C se va a compilar con un compilador de C, el código fuente debe ser
guardado, obligatoriamente, en un archivo con extensión (.c). Ahora bien, si se utiliza un
compilador de C/C++, el archivo se puede guardar con extensión (.c) o (.cpp).
PPRREE--PPRROOCCEESSOO:: Sirve para realizar modificaciones en el código
fuente obtenido en la fase de edición.
El preprocesador es un programa característico de C, es decir, en otros lenguajes de programación
no existe, y siempre se ejecuta antes de llevarse a cabo la compilación. Esto es debido a que, es el
propio compilador quien llama al preprocesador antes de realizar la compilación.
CCOOMMPPIILLAACCIIÓÓNN::Una vez que el código fuente ha sido pre-procesado, el
compilador traducirá ese código fuente (modificado) a código máquina.
Como resultado de la compilación, el compilador guardará el código objeto del programa en un
archivo con otra extensión.
EENNLLAACCEE::(linkaje o montaje). Los programas pueden utilizar funciones
de la biblioteca estándar de C, tales como scanf o printf. De cada una de ellas
existe un código objeto que debe ser enlazado (unido) al código objeto del
programa que las utilice. Esto se realiza mediante un programa llamado
enlazador, montador o linkador.
Como resultado del enlace, el enlazador guardará, en disco, un archivo ejecutable. En
Windows, dicho archivo tendrá extensión (.exe), abreviatura de executable. Dicho archivo será "el
ejecutable".
3. Además de las funciones de la biblioteca estándar de C, el programador también puede utilizar
funciones que hayan sido desarrolladas por él mismo.
Además de las funciones de la biblioteca estándar de C, el programador también puede
utilizar funciones que hayan sido desarrolladas por él mismo. Éstas pueden agruparse en
su propia biblioteca de funciones (no estándar). Por lo que, también en esta fase, el
código objeto de dichas funciones deberá ser enlazado al código objeto del programa que
las utilice.
Gráficamente, el proceso de puesta a punto de un programa escrito en C se puede ver en
la siguiente figura:
Fuente: http://www.carlospes.com/curso_de_lenguaje_c/01_02_fases.php
4. 3.1. CAPTURA Y EDICIÓN DEL PROGRAMA
Se puede crear un archivo que contenga el programa completo, como en los ejemplos que
se tienen más adelante. Se puede usar cualquier editor de textos ordinario con el que se
esté familiarizado. Un editor disponible en la mayoría de los sistemas UNIX es vi, y en Linux
se puede usar pico.
Por convención el nombre del archivo debe terminar con ``.c'' por ejemplo: miprograma.c
progprueba.c. El contenido del archivo deberá obedecer la sintaxis de C.
Existen muchos compiladores de C. El cc es el compilador estándar de Sun. El compilador
GNU de C es gcc, el cual es bastante popular y está disponible en varias plataformas.
Existen también compiladores equivalentes de C++ los cuales usualmente son nombrados
como CC. Por ejemplo, Sun provee CC y GNU GCC. El compilador de GNU es también
denotado como g++.
Existen otros compiladores menos comunes de C y C++. En general todos los compiladores
mencionados operan esencialmente de la misma forma y comparten muchas opciones
comunes en la línea de opciones. Más adelante se listan y se dan ejemplos de opciones
comunes de los compiladores. Sin embargo, la mejor referencia de cada compilador es a
través de las páginas en línea, del manual del sistema. Por ejemplo: man gcc.
Para compilar el programa usaremos el comando gcc. El comando deberá ser seguido por
el nombre del programa en C que se quiere compilar. Un determinado número de
opciones del compilador pueden ser indicadas también. Por el momento no haremos uso
de estas opciones todavía, se irán comentando algunas más esenciales.
Por lo tanto, el comando básico de compilación es:
gcc programa.c
Donde programa.c es el nombre del archivo.
Si hay errores obvios en el programa (tales como palabras mal escritas, caracteres no
tecleados u omisiones de punto y coma), el compilador se detendrá y los reportará.
Podría haber desde luego errores lógicos que el compilador no podrá detectar. En el caso
que esta fuera la situación se le estará indicando a la computadora que haga las
operaciones incorrectas.
Cuando el compilador ha terminado con éxito, la versión compilada, o el ejecutable, es
dejado en un archivo llamado a.out, o si la opción -o es usada con el compilador, el
nombre después de -o es el nombre del programa compilado.
Se recomienda y es más conveniente usar la opción -o con el nombre del archivo
ejecutable como se muestra a continuación:
gcc -o programa programa.c
El cual pone el programa compilado en el archivo del programa
señalado, en éste caso en programa, en vez del archivo a.out.
6. EEJJEECCUUTTAARR::
El siguiente estado es correr el programa ejecutable. Para correr un ejecutable en UNIX,
simplemente se escribe el nombre del archivo que lo contiene, en este caso programa (o a.out).
Con lo anterior, se ejecuta el programa, mostrando algún resultado en la pantalla. En éste estado,
podría haber errores en tiempo de ejecución (run-time errors), tales como división por cero, o
bien, podrían hacerse evidentes al ver que el programa no produce la salida correcta.
Si lo anterior sucede, entonces se debe regresar a editar el archivo del programa, recompilarlo, y
ejecutarlo nuevamente.