Hay varios pasos que deberemos seguir para crear un programa en C, convertirlo en un ejecutable y probarlo.
Muchos entornos de programación actuales nos permiten dar todos estos pasos desde un editor avanzado, en el que podemos escribir nuestros programas, compilarlos para obtener un ejecutable, y depurarlos en caso de encontrar algún fallo.
Es recomendable usar Linux para aprender a programar en C. Con frecuencia, los compiladores para otros sistemas están anticuados o respetan poco los estándares. Quizá (y sólo quizá) el sistema te parezca menos amigable que un Windows o un Mac, pero a cambio las herramientas de programación más habituales están instaladas desde el primer momento, y las menos habituales se pueden instalar en un par de clics desde "repositorios" oficiales.
Ni siquiera necesitas tener un ordenador equipado con Linux, ni varias particiones con varios sistemas operativos: puedes utilizar un gestor de máquinas virtuales, como VirtualBox, que es bueno y gratis. Para probar los ejemplos del curso yo usaré VirtualBox y una máquina virtual de una versión reciente de Linux Mint, que es una distribución basada en Ubuntu pero con entornos más tradicionales, más parecidos a "los Windows de toda la vida". En concreto usaré un Linux Mint 17.2 con el escritorio llamado Cinnamon, que es una evolución del clásico Gnome. En el apéndice 1.1 tienes información sobre cómo instalar una máquina virtual con Linux.
Si eres miedoso/miedosa (¿y entonces qué haces aprendiendo C?) y quieres usar Windows, en el apartado 1.4.3 tienes las ideas básicas, y en un apéndice al final del texto tendrás detalles de cómo usar algún entorno reciente para Windows (no, no uses Dev-C++ 4.9.9.2, que está muy extendido pero tiene un compilador del año 2005, que no soporta las características añadidas recientemente al lenguaje C y además es poco exhaustivo con los mensajes de error y de aviso).
El primer paso será teclear nuestro fuente, usando el editor incorporado en el sistema, y guardarlo, con un nombre terminado en ".c", como "ejemplo.c".
Después abriremos un "terminal" y compilaremos el fuente tecleando algo como:
cc ejemplo.c –o ejemplo
Donde:
Y para probar el programa teclearíamos
./ejemplo
Con lo que debería aparecer escrito "Hola" en la pantalla.
En el apéndice 1.2 tienes más detalles y en el 1.3 encontrarás información sobre cómo usar Geany para poder compilar y ejecutar desde el propio editor, de una forma más amigable.
Windows no incluye un compilador de C. El editor de texto que incorpora el sistema (el "bloc de notas") es muy inferior a los editores que incorporan los sistemas Linux. Existen algunos entornos de desarrollo que se pueden descargar e instalar, pero...
Si aun así, por algún motivo misterioso, quieres ser un gurú de la programación en C que le tenga miedo a Linux, puedes probar a instalar "Orwell Dev-C++". Incluye una versión reciente del compilador, un editor decente y hace una pausa tras lanzar cada programa, para poder comprobar que ha funcionado correctamente.
En el apéndice 1.4 podrás ver los pasos de instalación y detalles básicos de su uso.
Es uno de los problemas más habituales del principiante, y el motivo es usar un entorno que no sea ninguno de los recomendados, y que no haga una pausa al final de la ejecución del programa. Por ejemplo, eso puede ocurrir con el antiguo Turbo C 2.01 del año 1988:
También ocurre con las versiones antiguas de Dev-C++ y con algunas de CodeLite. En ocasiones existen soluciones dentro del entorno, como la opción "User Screen" de Turbo C, pero una solución (mala) que funcionará en casi cualquier caso es añadir la orden "getchar()" al final del programa, antes de "return 0", para esperar a que se pulse Intro. Es algo que nunca debería formar parte de un programa terminado, pero que puede ayudar durante la fase de creación de un programa. Dentro de poco veremos más detalles sobre "getchar".
/* Ejemplo en C: mostrar un texto y hacer pausa - ej010401.c */
#include
int main()
{
printf("Hola");
getchar(); /* Pausa. No usar en un programa terminado */
return 0;
}