TUTORIAL DEV-C ++
ELABORADO POR:
NELSON DANIEL VÁSQUEZ LÓPEZ
ELABORADO A:
NAYIBE DEL CARMEN RUIZ CHAGUI – COMPAÑEROS
PROGRAMACIÓN I
UNIVERSIDAD INDUSTRIAL DE SANTANDER
BUCARAMANGA
2
TABLA DE CONTENIDO
1. INTRODUCCIÓN ... 3
2. ENTORNO DE TRABAJO ... 4
3. MENÚ Y BARRAS DE HERRAMIENTAS ... 5
4. ERRORES COMUNES ... 9
10.1 TIPOS DE ERRORES ... 12
5.. PROGRAMAS EJEMPLO ... 13
3
INTRODUCCIÓN
El presente es un manual, para el uso de un entorno de desarrollo de código como lo es Dev-C++ y por lo tanto no hay ayudas sobre la referencia del lenguaje ni explicación de la sintaxis. Este manual presenta las facilidades de esta herramienta para el desarrollo de código.
Dev-C++ es un Entorno de Desarrollo Integrado (IDE) para el lenguaje de Programación C/C++ que usa Mingw de GCC (GNU Compiler Collection) como Compilador y permite crear:
• Programas ejecutables para Win32. • Programas ejecutables para consola.
• Construcción de DLL’s y bibliotecas estáticas.
• Además, se puede utilizar en combinación con otros compiladores basados en GCC.
Dev-C++ es un software de libre distribución sujeto a los términos de la Licencia Pública General (GPL) que facilita la escritura de programas en lenguaje C++ para brindar las facilidades de creación de programas (ejecutables *.exe), se apoya en diversos compiladores, entre ellos MinGW (Minimalist Gnu Windows), también software libre bajo la licencia GNU.
Las características de Dev-C++ son:
• Soporta múltiples lenguajes (el castellano es uno de ellos).
• Mantiene una lista con las clases utilizadas en el desarrollo de un programa. • Mantiene la lista de funciones definidas en el desarrollo del programa.
• Tiene un manejador de proyectos (se usa cuando el programa se compone de más de un fichero fuente).
• Tiene un editor que resalta la sintaxis del código que es configurable. • Soporta plantillas para la creación de tus propios tipos de proyectos.
• Permite la creación de Makefile para la compilación separada de archivos fuente. • Edita y compila ficheros de recursos.
4
ENTORNO DE TRABAJO
Dev-C++ es un Entorno Integrado de Desarrollo para el lenguaje de programación C/C++ que usa Mingw (Minimalist GNU for Windows, www.mingw.org) de GCC (GNU Compiler Collection www.gnu.org/home.es.html). Es un software de libre distribución (www.bloodshed.net) sujeto a los términos de la Licencia Pública General (GPL) de GNU.
5
MENÚ Y BARRA DE HERRAMIENTAS
1. Editor
Para crear un archivo fuente nuevo:
Archivo Nuevo Código Fuente (Ctrl+N)
Se dispone de una ventana en la que se edita el texto y escribiremos nuestros programas.
2. Menú y barra de herramientas
Típicos comandos de Windows (abrir, guardar, copiar y pegar…) También tenemos una serie de iconos en las barras de herramientas que no son más que una parte de las opciones que tenemos en los menús, se puede dejar el ratón encima de un icono durante unos segundos y aparecerá una ayuda emergente. Explicativa de lo que se ejecuta cuando se hace clic sobre la figura.
6
3. Área de edición.
Aquí aparecerán los Archivo de código que se abran. Se Pueden tener abierto más de un Archivo a la vez, y seleccionarlo por medio del menú Windows.
4. Tipos de ficheros en C - Fuente (.c):
Uno o más ficheros escritos en ASCII con las instrucciones del programa. - Objeto (.o o .obj):
Son ficheros intermedios creados a partir de la compilación, entendibles por el montador y transparentes al programador.
- Librería (.a o .lib):
Reune varios ficheros objeto en uno solo. Suelen agrupar funciones estándar. - Cabecera (.h):
Contienen definiciones y declaraciones compartidas por varios ficheros fuente, así como las correspondientes a las funciones estándar de las librerías.
7
Se almacena en un único fichero todo el código máquina de los ficheros objeto asociados al programa, ya en un formato ejecutable.
5. Proceso de Compilación
6. Compilación y Ejecución
Primero definiremos ¿Qué es compilar? y ¿Qué es ejecutar? en programación.
Compilar se refiere a la acción por medio de la cual, una serie de instrucciones escritas o codificadas en lenguaje de programación son convertidas a lenguaje máquina (binario) de tal forma que puedan ser ejecutadas por medio de un programa informático.
Ejecutar es la acción de iniciar la carga de un programa o de cualquier archivo ejecutable. En otras palabras, la ejecución es el proceso mediante el cual una computadora lleva a cabo las instrucciones de un programa informático.
Para compilar un archivo fuente: Ejecutar Compilar (Ctrl+F9) Para ejecutar:
8
Para compilar y ejecutar:Ejecutar Compilar y Ejecutar (F9) 7. Depuración
La depuración es la etapa final en la creación de una aplicación informática, básicamente depurar significa limpiar, cualquier programa o aplicación tiene error en su código, con lo cual es necesaria una depuración para su correcto funcionamiento, para esto existen aplicaciones para depurar, esto es, rastrear línea por línea de una aplicación en busca de errores.
Para ejecutar en modo de depuración:
Depurar Depurar (F8)
Para parar la ejecución:
Depurar Parar ejecución (Ctrl+Alt+F2)
Para poner/quitar un punto de parada:
Depurar Añadir/Quitar Punto de Ruptura (Ctrl+F5)
Para ver variables:
9
ERRORES COMUNESEvidentemente pueden producirse errores en el proceso.
La ventana del compilador está en la parte inferior de la pantalla, apareciendo si ocurre algún error al compilar.
También aparece si el compilador ve algo que quizás no sea un error, pero es sospechoso: un warning.
1. Olvidar terminar un comentario con */
Si cuando escribe, nota que el texto no adquiere los formatos adecuados, muy posiblemente olvidó cerrar el comentario con los caracteres */
2. Uso de letras mayúsculas cuando no es útil
Incorrecto Correcto
#include <iostream.h> #include <stdlib.h> int Main() { /* inicio del programa */ system("PAUSE"); return 0;
#include <iostream.h> #include <stdlib.h> int main() { /* inicio del programa */ system("PAUSE"); return 0;
No es evidente a simple vista si se ignora el sentido de la instrucción, pero al momento de compilar (F9) muestra un resultado que indica la falta de una función o instrucción.
10
3. Olvidar las dobles comillas de un texto o cadena de control.
Incorrecto Correcto
1 #include <iostream.h> 2 #include <stdlib.h> 3 int main()
1 #include <iostream.h> 2 #include <stdlib.h> 3 int main()
4 { 5 /* inicio del programa */ 6 cout<<"Hola mundo \n"; 7 "PAUSE"); system( 8 return 0;
Este problema ocasiona múltiples errores al momento de crear un ejecutable.
El siguiere es el mensaje es mostrado en la ventana “Compiler and linker output”
4. Olvidar el signo (;) después de cada instrucción.
Incorrecto Correcto
5 {
6 /* inicio del programa */ 7 cout<<"Hola mundo \n" 8 "PAUSE"); system( 9 return 0;
5 { 6 /* inicio del programa */ 7 cout<<"Hola mundo \n"; 8 "PAUSE"); system( 9 return 0;
5. Cambiar el signo “;” por “,” después de alguna sentencia
Este inconveniente no indica en cual línea de código está el error, ya que generalmente indica la siguiente línea.
11
6. Olvidar colocar llaves en una sentencia compuesta
Aplica para las sentencias for, if, do, switch. Este inconveniente no indica en cual línea de código está el error. Esto es debido a que realiza la comprobación completa de paréntesis que abren y cierran, solo el programador deberá determinar donde está el error. El siguiere es el mensaje es mostrado en la ventana “Compiler and linker output” : (Nota, en este ejemplo el nombre del archivo es ejemp_6.cpp)
7. Las palabras reservadas son:
auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while
Estas palabras no admiten modificaciones, es necesario escribirlas tal como son, sin mayúsculas, si no aparecen resaltadas en negrita resaltado en el área de edición, muy seguramente están mal escritas o fuera de contexto, y por lo tanto es necesario revisar el código. Incorrecto Correcto
8. Olvidar definir una variable.
El siguiente es el mensaje es mostrado en la ventana “Compiler and linker output”
(Nota, en este ejemplo el nombre del archivo es ejemp_8.cpp)
1 c:\err\ejemp_8.cpp:9: b' undeclared (first use this function) 2 c:\err\ejemp_8.cpp:9: (Each undeclared identifier is reported only once 3 c:\err\ejemp_8.cpp:9: for each function it appears in.)
Hace falta definir la variable b, en la línea 6, este error es detectado fácilmente por el
9. Usar “,” en vez de “;” dentro de una sentencia for.
El uso de “,“ en ves de “;“dentro de una sentencia for, genera error en 2 partes, en la línea donde se ha declarado la sentencia, y en la línea donde finaliza, no necesariamente es indicada la falta del signo “;”
12
10. Olvidar incluir una librería
El siguiente es el mensaje es mostrado en la ventana “Compiler and linker output” TIPOS DE ERRORES
Errores sintácticos
Los lenguajes de programación tienen una sintaxis determinada para que puedan ser interpretados por el compilador. El compilador detecta estos defectos de forma y muestra este tipo de errores. Por ejemplo: Dejarse un punto y coma al acabar una instrucción.
Errores en el enlace
Se suele tratar de errores a la hora de nombrar las funciones, en los tipos o número de parámetros o del lugar donde se encuentran al llamar a una función.
Errores semánticos
Son los más difíciles de detectar y el entorno no puede ayudarnos, puesto que se tratan de discrepancias entre lo que hace el programa y lo que se pretende que haga.
Errores en ejecución
Estos errores se dan porque en la ejecución de los programas ciertos valores pueden ser ilegales para ciertas operaciones. Por ejemplo: División por cero, la raíz cuadrada de un valor negativo, etc.
13
Altura y experiencia de un entrenador#include<iostream>
using namespace std;
int main()
{
short E, Pa, Pe, Tp;
float A;
cout<<"Digite la altura del entrenador: ";
cin>>A;
cout<<"Digite la experiencia en a\xA4os del entrenador: ";
cin>>E;//Empieza el primer condicional de selección múltiple
if(A<1.60) Pa=2; else if(A<1.80) Pa=5; else Pa=10; //Condicional Simple if(E<3) Pe=5;
else Pe=7; // Se totalizan los puntos obtenidos por altura y experiencia
Tp=Pa+Pe;
14
Tp+=2; //Operador de asignación compuesta Tp=Tp+2
else if(Tp<10)
Tp+=4;
else Tp+=6;
cout<<"El puntaje del aspirante es: "<<Tp<<"puntos";
}
Descuento y categoría del empleado
#include<iostream>
using namespace std;
int main()
{float sal, des;
short cat;
cout<<"Digite el salario: ";
cin>>sal;
cout<<"Digite la categoria del empleado: ";
cin>>cat;
switch(cat)
{
case 1: case 2://or
{des=sal*0.02;
break;//salir
15
case 3: {des=sal*0.03; break; } case 4: case 5: {des=sal*0.04; break; } default: {des=0; break; }}//fin del switch
cout<<"El descuento es: "<<des;
}
Determinar la longevidad de una persona
#include<iostream>
using namespace std;
int main()
{short edad;
16
cin>>edad;
if(edad<0)
cout<<"La persona aún no ha nacido";
else
if(edad<=12)
cout<<"La persona indicada es ni\xA4o ";
else
if(edad<=18)
cout<<"La persona indicada es adolescente";
else
if(edad<=60)
cout<<"La persona es adulto";
else
cout<<"La persona pertenece a la tercerda edad";
17
BIBLIOGFRAFÍA
Escuela Técnica Superior de Ingeniería del Diseño. Departamento de sistemas informáticos y computación. Introducción al Dev-C++. Tomado de: http://users.dsic.upv.es/~jsilva/fin/fin/Dev-C++.pdf
CRUZ, Nelson Javier, Centro de estudios de Ingeniería de Sistemas Universidad Nacional de Colombia. Tomado de: http://www.ebah.com.br/content/ABAAAAiNcAC/manual-dev-c?part=2
Fundamentos de la Informática. Universidad de Huelva. El Entorno Integrado de Desarrollo Dev-C++. Recuperado de: http://www.uhu.es/04004/material/El_Entorno_DevC.pdf