Está en la página 1de 8

Manual de uso de

Programacin en C/C++ estndar mediante CodeBlocks


http://www.codeblocks.org

ndice
1Introduccin........................................................................................................................................3 2Crear un proyecto...............................................................................................................................3 2.1Insertar archivos ya existentes en el proyecto............................................................................ 2.2Insertar nuevos archivos en el proyecto......................................................................................! 3Co"pilando y e#ecutando...................................................................................................................$ 3.1%epuracin..................................................................................................................................$ 3.1.1&reakpoints.........................................................................................................................$

1 Introduccin
CodeBlocks es un I%' (Integrated Development Environment) 'ntorno integrado de desarrrollo*) +ue per"ite principal"ente el desarrollo en C y C++) si bien otros lengua#es co"o Python ta"bi,n est-n soportados. 'n este docu"ento se describe de "anera sencilla las operaciones "-s co"unes con el entorno) es decir: crear un proyecto) co"pilar) e#ecutar y depurar.

Fig$ra %& El IDE Code'locks 'n la .igura 1) se aprecia la apariencia del entorno) con la parte derecha dedicada casi integra"ente a la edicin de archivos (al ser un editor con pesta/as) se pueden editar varios archivos al "is"o tie"po*. %eba#o del edtor) se encuentra el -rea de "ensa#es) donde se obtienen varias in.or"aciones co"o por e#e"plo los resultados de una b0s+ueda. 1rincipal"ente) ta"bi,n se "ostrar-n los resultados de cual+uier co"pilacin. 'n la parte i2+uierda se aprecian dos ventanas de depuracin: Call stack (la pila de lla"adas*) y Watches (visores de variables*) +ue slo est-n activas "ientras se est- depurando un deter"inado proyecto. 'sta es la con.iguracin por de.ecto) por lo +ue la disposicin de las ventanas pueden variar de un usuario a otro.

2 Crear un proyecto
1ara crear un proyecto) se selecciona la opcin File !e") y a continuacin) Pro#ect. 1ara construir el proyecto) b-sica"ente se necesita darle un no"bre) un directorio de residencia) y seleccionar el lengua#e y tipo de aplicacin a desarrollar.

'n pri"er lugar) se pregunta el tipo de aplicacin a desarrollar) co"o se puede ver en la .igura 2. 'l tipo de aplicacin "-s adecuado para desarrollar aplicaciones en C o C33 est-ndar es Console (pplication.

Fig$ra )& *ipos de proyectos 4 continuacin) se selecciona el lengua#e de progra"acin a e"plear para el proyecto. 1or de.ecto) seleccionare"os entre C y C++) tal y co"o se ve en la .igura 3. 5na ve2 seleccionado el lengua#e) ser- necesario escoger un no"bre para el proyecto) y una ubicacin (directorio* en el disco duro.

Fig$ra +& ,eleccin entre leng$a#es de programacin disponi'les'l si"ple hecho de introducir un t6tulo har- +ue se co"ple"enten las entradas de directorio del proyecto y de no"bre del proyecto) tal y co"o se ve en la .igura 7. 4 continuacin) es necesario seleccionar el co"pilador a e"plear) ade"-s de los per.iles ("odos de co"pilacin* a utili2ar) co"o se aprecia en la .igura 8.

Fig$ra /& *0t$lo del proyecto9os per.iles por de.ecto son per.ecta"ente adecuados para cual+uier proyecto: de'$g servirpara el proceso de desarrollo del so.tware) "ientras +ue release selecciona las opciones del co"pilador de "ayor opti"i2acin y eli"ina la in.or"acin de depuracin) para el "o"ento del acabado..

Fig$ra 1& Per2iles y seleccin del compilador'l co"pilador seleccionado es el :;5 :CC) +ue es el +ue se provee en la con.iguracin por de.ecto de Code&locks. <i para un proyecto espec6.ico se desea ca"biar de co"pilador) se puede seleccionar ahora. 5na ve2 pulsado Finish) el proyecto ha sido creado) as6 co"o el archivo main-c) +ue aparecer- en el nuevo directorio y co"o archivo principal de la co"pilacin. 1ara co"probarlo) slo es necesario re.erirse a la ventana .anagement) y seleccionar la pesta/a Pro#ect) co"o se observa en la .igura . &a#o la seccin con el no"bre del proyecto +ue se haya seleccionado) encontrare"os dos carpetas: so$rces y headers. &a#o la pri"era se encuentran todos los archivos .c y .cpp) "ientras +ue ba#o la segunda se encuentran todos los archivos .h. =aciendo doble clic en cual+uiera de ellos) hace +ue apare2can en el editor) listo para ser utili2ados. <i se pulsa el botn derecho del ratn sobre ellos) se pueden eli"inar del proyecto (aun+ue no son eli"inados del disco*.

2.1 Insertar archivos existentes en el proyecto.

ya

>uchas veces) es necesario incluir archivos ya existentes en un proyecto +ue acaba"os de crear) t6pica"ente por+ue estos archivos son "dulos +ue ya est-n hechos previa"ente y +ue desea"os aprovechar. 1ara a/adir estos archivos) se utili2a la opcin Pro#ect (dd Files) +ue abre un cuadro de di-logo de apertura +ue per"itir- seleccionarlos. 'n la ventana del proyecto aparecer-n correcta"ente ordenados seg0n sean archivos cabecera (.h* o archivos de i"ple"entacin (.c) .cpp*. ;tese +ue) para +ue una sentencia co"o #include cabecera.h sea correcta"ente co"pilada) Fig$ra 3& 4entana >anage"ent5 $na ve6 creado ta"bi,n es necesario a/adir al proyecto una el proyectoindicacin de dnde se encuentra ese archivo de cabecera (si es +ue no reside en el directorio del proyecto*. 'sto se logra en Pro#ects B$ild options) seleccionando entonces la pesta/a ,earch Directories (.igura !*) y pulsando entonces el botn add para a/adir un nuevo directorio. 'ntonces se escribe la nueva ruta (co"o se ve en la .igura $*) y es a/adido a la lista de b0s+ueda.

Fig$ra 7& (8adiendo directorios en las opciones de constr$ccin del proyecto5na ve2 hecho ,sto) el proyecto se construir- per.ecta"ente. <lo es necesario tener en cuenta un detalle: si el ca"ino del directorio a introducir contiene espacios) es posible +ue la co"pilacin ter"ine con varios errores aparente"ente inexplicables (co"o por e#e"plo) +ue no se encuentra c:?docu"ents) en @indows*) por lo +ue si es as6) es "ucho "-s conveniente indicar el nuevo directorio de b0s+ueda co"o un ca"ino relativo) en lugar de absoluto. 4s6) si necesita"os un

Fig$ra 9& Introd$ciendo el n$evo directorio de ':s;$eda-

directorio lla"ado <i' +ue est- al "is"o nivel +ue el directorio del proyecto (co"o e#e"plo) =ola.$ndo/*) entonces ser- "-s conveniente .i#ar el nuevo directorio de b0s+ueda co"o --/<i'. Aa"bi,n es posible) en esta ventana) ca"biar el co"pilador +ue se ha estado usando) o las opciones de depuracin u opti"i2acin) o cual+uier otra +ue se desee a/adir. ;tese +ue) a la i2+uierda) aparecen los per.iles +ue haya"os creado antes (por de.ecto) de'$g y release*) de "anera +ue los ca"bios a.ectan independiente"ente a una de los per.iles: para +ue a.ecten a a"bos) sernecesario repetirlos. 's sencillo co"parar a"bos per.iles: el pri"ero tiene todas las opciones de depuracin seleccionadas) "ientras el otro no slo no las tiene) sino +ue incluye todas las posibles opti"i2aciones.

Fig$ra >& Directorio de ':s;$eda a8adido-

2.2 Insertar nuevos archivos en el proyecto

Fig$ra %?& (8adiendo $na n$eva ca'ecera al proyecto's t6pico +ue necesite"os incluir nuevos "dulos en el proyecto) de "anera +ue divida"os la

.uncionalidad en partes independientes. 9o +ue desear6a"os hacer en ese caso es "uy parecido a lo hecho en el apartado anterior) slo +ue ahora los archivos no existen previa"ente. 1ara acceder a esta opcin) se selecciona File !e") y entonces) File. <e nos da a elegir entre dos opciones: un nuevo archivo de cabecera (header) extensin .h*) o de i"ple"entacin (source) .c*. <e esco#a uno u otro) aparece una ventana "uy parecida a la "ostrada en la .igura 1B. 'n el apartado 2ile name se indica el no"bre del archivo) aun+ue es necesario tener en cuenta +ue hay +ue especi.icarlo con la ruta co"pleta) por lo +ue ser- "ucho "-s c"odo utili2ar el botn a la derecha de este ca"po) +ue abre un cuadro de di-logo de guardado. <i se desea a/adir el archivo al proyecto (+ue es lo "-s habitual*) se de#a "arcada la opcin (dd 2ile to active pro#ect. 'n este caso es necesario a/adir el archivo a los per.iles de'$g y release. 9o "-s habitual es asign-rselo a a"bos) pudiendo hacerlo a trav,s del botn all o "arcando cada uno de ellos. 'n cuanto al ca"po header g$ard "ord) se trata de la t6pica constante utili2ada por el preprocesador para hacerle saber si ya ha co"pilado esta cabecera previa"ente para esta unidad de traduccin. CodeBlocks rellena este ca"po auto"-tica"ente) una ve2 introducido el no"bre del archivo) por lo +ue no es necesario preocuparse por ello. Cinal"ente) hay +ue tener en cuenta +ue si se ha creado un archivo de cabecera) y ,ste se encuentra en un directorio +ue no es el directorio del proyecto) ser- necesario) co"o se indica en el apartado anterior) a/adir la ruta del directorio en el +ue se encuentra a las opciones del proyecto.

3 Compilando y ejecutando
9as opciones B$ild '$ild y B$ild r$n) construyen y e#ecutan el progra"a) respectiva"ente. <e pueden ata#ar "ediante las pulsaciones de teclas Ctrl3CD y Ctrl3C1B) o) incluso) si se desean reali2ar a"bas acciones en secuencia) pulsando CD. 'n cuanto a la barra de herra"ientas) pulsando la ruenda dentada se co"pila) y pulsando el tri-ngulo de reproduccin se e#ecuta. Cuando el proyecto consiste en una aplicacin de consola) una ventana de consola se abre para recibir y "ostrar texto) y cuando ter"ina la e#ecucin espera a +ue se pulse una tecla.

3.1 Depuracin
9a depuracin no se produce cuando el progra"a se e#ecuta nor"al"ente) "ediante Ctrl3C1B CD. 1ara depurar un progra"a es necesario seleccionar la opcin De'$g start) o bien pulsar C$) +ue lan2a la depuracin del progra"a desde el principio. <i se desea e"pe2ar a depurar desde un punto deter"inado) o durante la depuracin) hacer +ue el progra"a corra nor"ale"ente hasta una deter"inada l6nea) se sit0a el cursor sobre esa l6nea y se selecciona De'$g r$n to c$rsor) o se pulsa C7. 4 la hora de depurar una aplicacin) se utili2an principal"ente las opciones De'$g ,tep into (<hi.t 3 C!* y De'$g ne@t line (C!*. >ientras +ue la segunda va avan2ando de l6nea en l6nea) y e#ecutando a las .unciones +ue sean lla"adas en cada una de "anera transparente) la pri"era per"ite saltar de .uncin en .uncin) con#unta"ente con el .lu#o del progra"a.

3.1.1 Breakpoints
9os puntos de ruptura ('reakpoints*) se utili2an para parar la e#ecucin cuando se estdepurando) y se pulsa C$ para +ue la e#ecucin contin0e nor"al"ente. <e "arcan con un c6rculo ro#o a la i2+uierda de la l6nea) pulsando con el ratn entre la l6nea y el n0"ero de l6nea) o bien situ-ndose en esa l6nea y pulsando C8 (.igura 11*. Cuando la e#ecucin llegue a esa Fig$ra %%& An breakpoint en la l0nea %/+l6nea) s6"ple"ente se detendr-) y nos per"itirutili2ar la ventana de observadores ("atches*) de "anera +ue se pueda consultar el valor de cual+uier variable (De'$g edit "atches*.

También podría gustarte