Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Devc PDF
Devc PDF
Práctica 6
1. Introducción
Estas notas sirven de apoyo para la realización de las prácticas de programación en
lenguaje C de la asignatura Fundamentos de Informática de primer curso de Ingeniería
Industrial.
Este software integra en una única herramienta todo lo necesario para desarrollar
programas en lenguaje C, incorporando como elementos más destacados, un
preprocesador de lenguaje (Preprocessor) y un compilador de lenguaje C/C++
(Compiler), y un montador de enlaces (Linker). Además de estos elementos básicos, la
herramienta proporciona otras funcionalidades muy convenientes, como son una
herramienta de depuración de código (Debugger), así como plantillas de código
preformateado y librerías de funciones de fabricante.
http://www.bloodshed.net/dev/devcpp.html
2. Nomenclatura y Convenciones
En este texto, así como en otro de informática, se usan convenciones para indicar de
forma resumida alguna acción a realizar. También se usan palabras con un sentido
definido distinto del que tienen en el lenguaje habitual.
En cuanto a las convenciones, éstas permiten sobre todo indicar las pulsaciones de las
teclas. Para indicar que se pulsen dos teclas simultáneamente, se escribe tecla1+tecla2.
Por ejemplo, Alt+f significa que se ha de pulsar la tecla Alt y, dejando ésta pulsada,
pulsamos a continuación la tecla f.
1
Fundamentos de Informática. Primer Curso de Ingenieros Industriales
3. Desarrollo de la práctica
Posiblemente, el mejor modo de aprender estas nociones, es comenzar con la escritura
de un primer programa en Dev-C++, tal como describiremos a continuación.
Barra de Menús
Barras de Herramientas
Ventana de programa
Para ello es necesario abrir nuevo archivo en blanco de código fuente, acudiendo en
la barra de menús a Archivo -> nuevo - > Código fuente
2
Fundamentos de Informática. Primer Curso de Ingenieros Industriales
Escriba lo siguiente:
#include <stdio.h>
main()
{
float a,b,med;
printf("Introduzca el primer numero\n");
scanf("%f",&a);
printf("Introduzca el segundo numero\n");
scanf("%f",&b);
med=(a+b)/2;
printf("\n\nLa media de %f y %f es %f\n",a,b,med);
system("PAUSE");
}
Compruebe que ha tecleado correctamente el programa con todos los símbolos que
aparecen en él.
3
Fundamentos de Informática. Primer Curso de Ingenieros Industriales
el nombre que crea oportuno (Verifique que la extensión es “C source files (*.c)”).
Con esta etapa habrá finalizado la creación de su fichero de código fuente. Para
obtener el programa final, es necesario compilar y montar el programa, pasos que
se explican a continuación.
3.3. Compilación
En la etapa de compilación el código fuente es comprobado sintácticamente por
Dev-C++, y traducido a lenguaje de máquina (aún no ejecutable, y denominado
código objeto). En caso de detectarse errores sintácticos o de concordancia de
acuerdo con las reglas del lenguaje C, Dev-C++, avisa apropiadamente, tal como
veremos a continuación.
Para compilar el código fuente que acabamos de teclear basta con acudir a la barra
de menús y pulsar Ejecutar-> Compilar, o bien Ctrl+F9.
Con esto se inicia el proceso de compilación. Si todo va bien debe observar una
ventana como la siguiente:
4
Fundamentos de Informática. Primer Curso de Ingenieros Industriales
Es decir, debe obtener cero errores (Errors) y cero avisos (Warnings) en el proceso
de compilación.
Los errores son fallos críticos en la escritura o la concepción del programa que
impiden al compilador realizar su tarea. Son por tanto errores que impiden
proseguir con el resto de etapas de creación del programa, y deben ser reparados.
Los errores más simples (ausencia de punto y coma al final de una sentencia,
variables no declaradas, paréntesis no balanceados, etc.) pueden corregirse de
forma sencilla inspeccionando el código del programa con la ayuda de los mensajes
del compilador. Errores más sutiles o de difícil detección pueden requerir el empleo
de la herramienta de depuración que se describirá posteriormente.
3.4. Montaje
En la etapa de Montaje, el código objeto generado en la etapa de compilación es
“ensamblado” junto con el código objeto de las funciones de librería para crear un
único fichero ejecutable (con extensión .exe)
3.5. Ejecución
5
Fundamentos de Informática. Primer Curso de Ingenieros Industriales
Cada vez que realice alguna modificación al programa, deberá compilar, montar y
ejecutar de nuevo el programa. Dev-C++ tiene una opción para realizar estas tres
tareas en un sólo paso pulsando en la barra de menús Ejecutar -> Compilar y
Ejecutar. Resulta sin embargo conveniente que en un principio realice estas tareas
por separado hasta adquirir una cierta práctica.
3.6. Depuración
Se entiende por depuración de un programa, aquellas tareas encaminadas a la
localización y eliminación de errores (‘bugs’ en su denominación en inglés) de
cualquier naturaleza en el código de un programa.
Dev-C++ proporciona varias herramientas para este propósito, entre las que cabe
destacar:
1. Inspección de variables
Esta herramienta permite mostrar el valor de cualquier variable del
programa mientras éste se ejecuta. Con ello se puede verificar si las
variables toman el valor esperado en cada paso de ejecución y actuar en
consecuencia.
Para usar esta herramienta, en primer lugar hay que ejecutar el programa en
modo de depuración. Una forma sencilla de hacerlo es emplear la
herramienta ejecutar hasta el cursor. Para ello coloque el cursor con el
ratón sobre cualquier línea del programa, por ejemplo
float a,b,med;
6
Fundamentos de Informática. Primer Curso de Ingenieros Industriales
7
Fundamentos de Informática. Primer Curso de Ingenieros Industriales
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
main()
{
int nal,n,i;
time_t s;
time(&s);
srand((unsigned int) s);
nal=rand()%50;
i=0;
8
Fundamentos de Informática. Primer Curso de Ingenieros Industriales
En esta ocasión puede observar que algunas líneas están desplazadas respecto al margen
izquierdo. Es lo que se denomina indentación.
Aunque no es imprescindible, se recomienda que respete la indentación, ya que
proporciona mayor legibilidad al código (en su debido momento comprenderá la
importancia de adquirir está práctica como hábito de programación).