Page 10

1.1 C es un lenguaje compilado en la l´ınea de ´ ordenes Unix. Como resultado, el int´erprete va leyendo y ejecutando paso a paso el programa. Para volver a ejecutarlo, has de volver a escribir python sumatorio.py en la l´ınea de ´ ordenes, con lo que se repite el proceso completo de traducci´on y ejecuci´on paso a paso. Aunque no modifiquemos el c´odigo fuente, es necesario interpretarlo (traducir y ejecutar paso a paso) nuevamente. Int´erprete Python

sumatorio.py

Resultados

C es un lenguaje compilado: antes de ejecutar un programa escrito por nosotros, suministramos su c´ odigo fuente (en un fichero con extensi´on ((.c))) a un compilador de C. El compilador lee y analiza todo el programa. Si el programa est´a correctamente escrito seg´ un la definici´ on del lenguaje, el compilador genera un nuevo fichero con su traducci´on a c´ odigo de m´ aquina, y si no, muestra los errores que ha detectado. Para ejecutar el programa utilizamos el nombre del fichero generado. Si no modificamos el c´odigo fuente, no hace falta que lo compilemos nuevamente para volver a ejecutar el programa: basta con volver a ejecutar el fichero generado por el compilador. Para ejecutar sumatorio.c, por ejemplo, primero hemos de usar un compilador para producir un nuevo fichero llamado sumatorio. Compilador de C

sumatorio.c

sumatorio

Podemos ejecutar el programa escribiendo sumatorio en la l´ınea de ´ordenes Unix.1 sumatorio

Resultados

Si queremos volver a ejecutarlo, basta con escribir de nuevo sumatorio; no es necesario volver a compilar el contenido del fichero sumatorio.c. sumatorio

Resultados

La principal ventaja de compilar los programas es que se gana en velocidad de ejecuci´on, ya que cuando el programa se ejecuta est´a completamente traducido a c´odigo de m´aquina y se ahorra el proceso de ((traducci´ on simult´anea)) que conlleva interpretar un programa. Pero, adem´as, como se traduce a c´ odigo de m´aquina en una fase independiente de la fase de ejecuci´on, el programa traductor puede dedicar m´as tiempo a intentar encontrar la mejor traducci´on posible, la que proporcione el programa de c´odigo de m´aquina m´as r´apido (o que consuma menos memoria). Nosotros usaremos un compilador concreto de C: gcc (en su versi´on 3.2 o superior)2 . Su forma de uso m´ as b´ asica es ´esta: gcc fichero.c -o fichero ejecutable La opci´ on -o es abreviatura de ((output)), es decir, ((salida)), y a ella le sigue el nombre del fichero que contendr´ a la traducci´ on a c´odigo m´aquina del programa. Debes tener presente que dicho fichero s´ olo se genera si el programa C est´a correctamente escrito. Si queremos compilar el programa sumatorio.c hemos de usar una opci´on especial: gcc sumatorio.c -lm -o sumatorio

La opci´ on -lm se debe usar siempre que nuestro programa utilice funciones del m´odulo matem´ atico (como sqrt, que se usa en sumatorio.c). Ya te indicaremos por qu´e en la secci´on dedicada a presentar el m´ odulo matem´atico de C. 1 Por razones de seguridad es probable que no baste con escribir sumatorio para poder ejecutar un programa con ese nombre y que reside en el directorio activo. Si es as´ı, prueba con ./sumatorio. 2 La versi´ on 3.2 de gcc es la primera en ofrecer un soporte suficiente de C99. Si usas una versi´ on anterior, es posible que algunos (pocos) programas del libro no se compilen correctamente.

4

Introducci´ on a la Programaci´ on con C

Profile for esLibre.com

Introducción a la programación con c  

Introducción a la programación con c  

Advertisement