Home

El entorno de desarrollo lcc

image

Contents

1. 1 printti Hola mundo n j a p hlaut ws se Prois Fiif 1 de 1 Flara O build search main 434 Figura 1 10 Vista de las modificaciones con la opci n SHOW CHANGES Tambi n es posible descartar los ltimos cambios recargando el archivo original con la opci n RELOAD del men FILE La parte inferior del IDE puede mostrar la pantalla de salida Para mostrarla y ocultarla se utiliza el bot n de la esquina inferior izquierda figura 1 7 Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 6 cpp cleccApropecteholamundo c 4 Unterminated string or char const Error Alec projects holamundo c 5 illegal expression Error cilech projects holamundo c 6 syntax error found end of input expecting Warming clec projectssholamundo c 6 printf expects a char painter as first arg got pointer to wod Error cAlec projectesholamundo c 6 Suntas error missing semicolon before end of input Error e leckproects holamundo c 6 syntax error found end of input expecting Y Compilation link time 0 1 sec Return code 1 El build search Figura 1 11 Vista de los errores sint cticos La ventana de salida muestra los resultados de las distintas opciones que se pueden hacer en el entorno como los resultados de la compilaci n con los errores en tiempo de compilaci n los resultados del linker etc 1 2 2 Crear y editar un programa con wedit wedit
2. ltimo se permitir modificar algunas de las opciones del compilador el linker y el depurador para el proyecto actual Compiler settings Preprocessor Hdefines lt ncludes gt e Path d lechnclude Add Remove Code generation l Structure alignment _ Generate asm Generate browse info i Optimize Use pentium pro default k i instructions _ Enable profiling _ Eliminate unused assignments Debugging support lewel Generate Aun time stack trace Aun time stack trace and ye debug mfo L support g L line number support g4 Language extensions Warming level bisc o Normal Intermediate O Use 2 Ansi E only OAI F E Figura 1 19 Cuadro de di logo con las opciones del compilador De momento no se tocar n las opciones por omisi n Sin embargo puesto que el curso se va a centrar en el lenguaje C est ndar ANSI C puede ser interesante marcar el bot n de radio ANSI C ONLY para que el compilador no admita ninguna instrucci n no est ndar en el programa Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 12 En los siguientes cuadros de di logo con las opciones del linker y del depurador se dejar n las opciones por omisi n pulsando el bot n SIGUIENTE y FINALIZAR respectivamente Una vez que el proyecto ya est creado se puede crear el o los programas fuente y a adirlos al proyecto con la opci n ADD DELETE FILES del m
3. 1 lt n i i tor int 3 0 J lt n i 3 printit 31 t 1 5 Ventana con los resultados de la compilaci n el link la b squeda etc Muestra u Nombre de la funci n oculta la j i ventana de d nde est el cursor resultados adadomagica c 30 undeclared identifier n mero de l nea y Eacuadadomagico c 30 possible usage of i before definition pianon ink ame da sec Return code 1 N E build search columna Botones para mostrar los resultados de la ltima compilaci n o la ltima b squeda escribirCuadrado 30 15 Figura 1 7 Pantalla principal de wedit La ventana del editor de c digo de wedit no tiene barra de desplazamiento horizontal Para ver la parte oculta de la l nea de c digo hay que pulsar con el rat n en la parte derecha cerca de la barra de desplazamiento vertical o en la parte izquierda cerca del borde de la ventana MM cuadadomagico c include lt stdio h gt void inicializartuadradof int t 100 100 inf void escribirtuadradof 1nt t 100 100 int n void llenartuadrado int t 100 100 int n void maini wvoidj int n 3 int t 100 100 inicializartuadrado t n llenarfuadradoft n escribirtuadrado t n Pinchar aqu para ver la parte derecha de la l nea Pinchar aqu para ver la parte izquierda de G Jid inicializar Cuadradoiint t 100 100 1 j or int i 0 1 l
4. de consola las que se har n en este curso una aplicaci n para Windows o bibliotecas est ticas o din micas Los archivos de recursos se utilizan en aplicaciones complejas para almacenar mapas de bits cursores iconos sonidos elementos para aplicaciones multiling es etc Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 11 El bot n CREATE permitir crear el proyecto El compilador Icc mantiene una lista de los proyectos creados dentro del archivo projects ini que se almacena dentro de la carpeta Mis documentos1lcc El siguiente cuadro de di logo permite indicar si queremos generar un esqueleto de la aplicaci n La creaci n de un esqueleto puede ahorrar tiempo en aplicaciones complejas pero en el caso del presente curso es preferible indicar que No A continuaci n se pueden incluir distintos archivos fuente dentro del proyecto Si partimos de un proyecto nuevo se dar a al bot n CANCELAR si por el contrario se desea aprovechar archivos fuente ya existentes se marcar n y se pulsar el bot n ACEPTAR La siguiente pantalla servir para gestionar los archivos fuente incluidos en el proyecto Si no hay m s archivos que a adir se volver a pulsar el bot n CANCELAR Si de momento no existe ning n archivo fuente se advertir de esa circunstancia preguntando si se desea continuar con la creaci n de un proyecto vac o como ser a el presente caso Por
5. ejecuta dicha funci n entera y pasa a la siguiente instrucci n dentro del mismo nivel e STEP OUT F9 Ejecuta todas las instrucciones hasta el final de la funci n y retorna al punto d nde se ha llamado a dicha funci n e RUN TO CURSOR F7 El depurador ejecuta el programa hasta la posici n actual del cursor Pulsando con el bot n derecho en una instrucci n se puede seleccionar la opci n SET NEXT STATEMENT Esta opci n permite que el control del programa salte a esa instrucci n omitiendo todas las que se encuentran antes Esta opci n puede hacer que el programa falle por que se ha saltado alguna instrucci n necesaria anterior Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 18 Tambi n es posible salir del depurador con la opci n STOP DEBUGGING reiniciar el programa con RESTART O para la ejecuci n inmediatamente con BREAK por ejemplo si nos hemos metido en un bucle sin fin Puntos de interrupci n breakpoint Un punto de interrupci n es un lugar del programa fuente d nde se detendr siempre la ejecuci n y que se podr utilizar para ver el estado del programa en un punto determinado del mismo Para establecer un punto de interrupci n se situa el cursor en el punto deseado y se selecciona la opci n BREAKPOINT del men DEBUG F2 El wedit cuadradomagico cuadradomagico funciones c Bl File Edit Search Project Design Debug Utils Modules Window Hel
6. es el entorno de programaci n integrado de Icc Aunque wedit trabaja con proyectos se ver un poco despu s la forma m s f cil de crear un programa simple es con la opci n New del men FILE y seleccionar la opci n FILE Preguntar entonces el nombre del programa Mame holarmando c Cancel Figura 1 12 Cuadro de di logo para crear un nuevo programa Al pulsar el bot n OK se abrir el editor de c digo y podremos escribir el programa fuente E wedit holamundo a File Edt Search Project Design Compiler Utis Analysis Window Help E holamundo c include lt stdio h gt int maini wyoid printti Hola mundo n return l A buld search man 5 14 Figura 1 13 El programa holamundo c en el editor de c digo Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 7 Explicaci n del programa holamundo c 1 Ellenguaje C tiene muy pocas palabras clave Casi todas sus capacidades las obtiene a partir de la funciones de bibliotecas un conjunto de funciones escritas normalmente en C que se incluyen en el programa fuente y que est n incluidas en el est ndar de C creadas pres por terceros o creadas por el propio programador El preprocesador de los compiladores C permiten incluir ese c digo fuente mediante la directiva include que permite a adir los llamados archivos de cabecera archivos con extensi n h En este program
7. los errores de compilaci n son en ocasiones m s dif ciles de interpretar que el ejemplo anterior Si existen varios errores sint cticos es posible que inicialmente no se marquen todos los que est n o que aparezcan errores que se arrastran a partir de otros y que desaparecer n al solucionar el primero de ellos Por ejemplo en el siguiente c digo fuente include lt stdio h gt void main void int variable 5 princi Valor de La Variables dr Varrabile gt la salida de errores muestra el siguiente texto que omite el error anterior y a ade varios m s Cpp Gite NELFOres Cc 6 Unterminarted string or char const Error g l lerrores c 7 illegal expression Error qilu errores c 8 syntax error found end of 1input expecting Warning g l lerrores c 8 printf expects a char pointer as first arg got pointer to void Error g l lerrores c 8 Syntax error missing semicolon before end of input Error dise errores syntax error found end of input expecting El nico error adem s del nombre del identificador es que se ha omitido la comilla que deb a ir despu s de d El verdadero error es el primero que aparece en la l nea 6 la constante de cadena no se ha finalizado porque falta la comilla Pero esto provoca una serie de errores a adidos que arrastra ese primer error e La expresi n es err nea se ha llegado al final del programa y la llamada a la funci n printf es err nea i
8. que contienen el c digo de un ejecutable o una biblioteca Puede incluir archivos de cabecera documentaci n etc En el caso de wedit s lo incluir archivos de c digo y archivos de recursos En un proyecto cada archivo con c digo fuente ejecutable generar un programa objeto que se podr compilar de forma independiente y que generar n al final un nico programa ejecutable 1 3 1 Creaci n del proyecto La opci n CREATE del men PROJECT se utiliza para crear un proyecto nuevo En la creaci n del proyecto se debe proporcionar por lo menos el nombre del proyecto y la carpeta d nde se ubicar n los archivos con c digo fuente es decir el directorio de trabajo Definition of a new project Nombre del proyecto Name of the project Mamout suadtadomagico SC pa y Carpeta de trabajo con los programas fuente Help working ramaci n 1011 AprogramazCAcuadradomagico directory Carpeta de salida con los programas obj y exe palo ci n 1 0 11 AprogramasCkcuadradomagico lcd Type of project O Windows application 0 Static Library lib 2 Console Application O Dynamic Link Library dll C Use framework Figura 1 18 Cuadro de di logo para la creaci n de un proyecto Los programas objeto y los ejecutables se almacenar n si no se dice lo contrario en una carpeta dentro del directorio de trabajo que tendr el nombre de 1cc En esta ventana tambi n se puede elegir el tipo de proyecto entre una aplicaci n
9. 2 iemd exe 19707 2010 12 39 lt DIR gt lec 19707 2010 12 49 lt DIR gt lcci v archivos 2 000 bytes 9 dirs 227 364 972 288 bytes libres D AlccAprojects gt lcc holamundo c D AlccAiprojects gt IA o AA E A _ Figura 1 4 Llamada al compilador desde la l nea de rdenes Esto crear entre otras cosas el programa objeto holamundo obj Enlazar el archivo llamando al linker 1cc1nk e CIMAINDOWS ds ystem3 2 iemd exe 19707 2010 12 39 9 holamundo c 1970772010 12 39 lt DIR gt lec 1970772010 12 49 lt DIR gt leci 6 archivos 2 087 bytes 9 dirs 227 364 972 288 bytes libres D AleccAprojects gt lecl1nk holamundo ob DEA eo OA Figura 1 5 Llamada al linker desde la l nea de rdenes Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 3 Con lo que se crea el ejecutable holamundo exe 6 Ejecutar el programa Simplemente hay que llamar al ejecutable holamundo exe cx CIMAINDOWS ds ystem3 2 iemd exe D XlccAprojects gt lcc holamundo c D AlecAprojects gt leclnk holamundo ob D Aleciprojects gt holamundo Hola mundo DA eo anre l Figura 1 6 Ejecuci n y salida de resultados desde la l nea de rdenes 1 2 El entorno de desarrollo 1 2 1 La interfaz de usuario Aunque en ocasiones es m s flexible utilizar el compilador de l nea de rdenes lo normal es utilizar un entorno de programaci n integrado IDE Inte
10. ELETE 47 58 69 80 1 12 23 34 45 37008 Figura 1 26 Ventana Watch 1 5 Ejercicios 1 Crear un proyecto cudradomagico que incluya los programas fuente cuadradomagico c y cuadradomagico funciones c disponibles en el campus virtual en el archivo cuadradomagico zip 2 Detectar y solucionar los errores del c digo presente en los programas fuente 3 Ejecutar y probar el programa Compilar realizar el enlace y ejecutar el programa cuadradomagico desde la l nea de rdenes del sistema 5 Modificar el programa de forma que la variable n tome valor 15 6 Utilizando el depurador obtener el valor de las variables locales de la funci n llenarCuadrado en la l nea 37 de programa cuando k sea igual a 8 Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 20
11. Introducci n al lenguaje C 1 El entorno de desarrollo Icc 1 1 Instalaci n El compilador Icc es un programa de c digo abierto que se puede descargar de www cs virginia edu lcc win32 Desde esa misma direcci n es interesante descargar tambi n el manual de usuario para obtener la ayuda en l nea del entorno de desarrollo archivo manual exe Tambi n puede ser interesante descargar el tutorial de C en pdf archivo tutorial padf A la hora de instalar el compilador en lugar de hacerlo en el t pico Program files o Archivos de programa conviene hacerlo en la carpeta que sugiere c lcc ya que puede dar problemas con los espacios en blanco en el nombre de las carpetas Adem s crea una carpeta en Mis Documentos llamada lcc con informaci n sobre los proyectos que se vayan generando Si no se dice lo contrario los programas fuente los crear en la carpeta c 11cc1projects y por cada proyecto o ejecutable que se cree utilizar una carpeta eoileciprojecis doco riLlec projects lecl er ec projectorleco etc la ubicaci n de los fuentes y de los archivos de salida se pueden cambiar con las propiedades del proyecto 1 1 1 Componentes En la instalaci n se incluyen entre otros los siguientes componentes e Compilador de l nea de rdenes 1cc exe compila y genera los programas objeto e Linker 1cc1nk exe genera los archivos ejecutables a partir de uno o varios programas objeto e El entorno
12. SISTEMA CAMBIAR CONFIGURACI N OPCIONES AVANZADAS hay que ser administrador Variables de entorno Wariables de usuario para luis rodriguez variable Walor TEMP Cu Documents and settingsuis rodrigu TMF C Documents and Settingsiluis rodrigu variables del sistema variable Walor MUMBER_ OP PP 1 o5 Windows MT CMT sestena2 E IMDOD S PATHE sT COM ESE BAT CMD YES BE 15 0 PROCESSOR A x56 ho Figura 1 2 Establecer la variable path desde la interfaz Windows A partir de esa ventana habr a que marcar la variable path pulsar el bot n MODIFICAR e incluir en ella la carpeta bin del directorio d nde est instalado el programa figura 1 3 Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 2 3 4 De Modificar la variable del sistema Mombre de variable Path valor de variable programa QuickTime O TSywsterif Figura 1 3 Modifica la variable Path Con un editor de texto plano por ejemplo el Bloc de notas crear el programa fuente en C tinclude lt stdio h gt void main printr Hola mundo 1 Guardar el archivo con extensi n c por ejemplo holamundo c en la carpeta lccliprojects En la interfaz de l nea de rdenes cambiar al directorio 1cc1projects cd c lcc projects y llamar al compilador de C 1cc e CIMAINDOWS ds ystem3
13. a que no respeta la sintaxis del lenguaje Durante el proceso de compilaci n uno de los pasos consiste en comprobar si cada elemento del programa fuente corresponde a la sintaxis del lenguaje del compilador las palabras clave est n bien escritas Se han declarado todas las variables utilizadas Las distintas instrucciones se han escrito con el formato requerido Si el compilador detecta alguno de estos errores el proceso se detiene y no se puede generar el programa objeto Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 14 Los compiladores avisan de los errores detectados en forma de mensajes de error Si se compila desde la l nea de rdenes aparece un listado de errores por la consola EX CA Windowsisystem321cmd exe Lo E F Programa fuen G Fundamentos de Programaci n I iB Ograma mente ERA erri DPeS c include stdio h gt oid maintuoid i l int variable 5 Salida del compilador con los errores sint cticos encontrados printf Ualor de la variable zd Uariable ffc runaanentos de Programaci n I 18 11 gt programasCuwde res c Fror erFrores cl 6 undeclared identifier Variable larning errores c b possible usage of Variable before definition error 1 warning G 5Fundamentos de Programaci n I 18 11 gt programasC depuracionDeErrores gt Figura 1 21 Errores sint cticos detectados mediante el compilador de l nea de rdene
14. a se incluye la biblioteca stdio h que contiene las funciones est ndar de entrada y salida El nombre del archivo de cabecera est encerrado entre los s mbolos lt y gt lo que indica que se trata de un archivo de cabecera est ndar que se encuentra en la ubicaci n est ndar de los archivos de cabecera la carpeta c 11cc1 include Si se deseara incluir un archivo de cabecera ubicado en otra carpeta se encerrar a entre comillas por ejemplo tinclude micabecera h 2 Lafunci n main es la funci n de entrada de un programa en C Al compilar el programa en el c digo objeto se indica que el programa debe empezar por la primera instrucci n o declaraci n que aparezca en esa funci n En su formato m s simple la funci n devolver un valor entero por eso comienza por la palabra reservada int y no recibe ning n argumento entre par ntesis la palabra reservada void indica que no recibe ning n dato 3 El cuerpo del programa va encerrado entre llaves Cada bloque de programa se encierra entre llaves y puede haber varios niveles de anidamiento de llaves figura 1 7 4 Para sacar por pantalla la cadena Hola mundo se utiliza una llamada a la funci n est ndar printf que est contenida en el archivo de cabecera stdio h Una llamada a una funci n tiene el nombre de la funci n y encerrados entre par ntesis la lista de argumentos cuyo n mero orden y tipo cambiar de una funci n a otra 5 En este caso el argumento de la fu
15. amador el que realice un seguimiento del mismo para ver si todo funciona como deber a ser La forma m s f cil de evitar estos errores es en la fase de dise o del algoritmo mediante una tabla de seguimiento que compruebe que el programa realiza los pasos necesarios que las variables van tomando los valores previstos y que la salida es la prevista en el an lisis del problema Si a pesar de todo el programa no realiza cometido de forma correcta los entornos de programaci n suelen disponer de una herramienta el depurador debugger que permite analizar el flujo de control del programa comprobar si las distintas estructuras de control se comportan como se prev y que las distintas variables toman los valores correctos 1 4 2 El depurador de Icc Un depurador es una herramienta que permite hacer una traza de un programa en tiempo de ejecuci n lo que facilitar la detecci n de errores El depurador permitir ejecutar el programa hasta un punto determinado del mismo deteni ndose la ejecuci n o ejecutando las instrucciones paso a paso y permitiendo investigar el estado del mismo en ese punto Para iniciar el depurador hay que seleccionar la opci n DEBUGGER del men COMPILER F5 Se abrir entonces la ventana del depurador En el men principal aparece la opci n DEBUG y aparece destacada en la pantalla la primera l nea de c digo ejecutable funci n main En la parte inferior aparecer n distintas opciones para ver el estado de dis
16. de desarrollo integrado IDE llamado wedit exe Desde el entorno de desarrollo se editan los programas se compilan montan y ejecutan Tambi n incluye el depurador editores de recursos para aplicaciones basadas en entornos gr ficos Windows etc 1 1 2 Compilador de l nea de rdenes A partir de un programa fuente se puede compilar un programa directamente desde la l nea de rdenes Hay que tener en cuenta que los binarios 1cc exe y 1cclnk exe est n en la carpeta c 11ccAbin por lo que es interesante agregar esa carpeta a la variable de entorno Pat 1 Abrir una ventana de consola InICIO EJECUTAR CMD en Windows XP 2 Establecer la variable de entorno PATH Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 1 e CUMAINDOWS ds ystem3 2 iemd exe Hicrosoft Hindows AP Version 5 1 2600 C Copyright 1985 2861 Microsoft Corp C Documents and SettinasAluis rodriguez gt set path path d AlccA4bin C Documents and SettinasAluis rodriquez gt Figura 1 1 Establecer la variable path desde la l nea de rdenes Tambi n se puede establecer esa variable de entorno como permanente con el panel de control de Windows En el PANEL DEL CONTROL de Windows XP elegir la opci n SISTEMA En la pesta a de OPCIONES AVANZADAS seleccionar el bot n VARIABLES DE ENTORNO En Windows 7 para acceder a la misma ventana desde el PANEL DE CONTROL habr a que elegir la opci n
17. e un bot n REMOVE SELECTED FILE la opci n no funciona correctamente en la versi n actual de wedit Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 13 Open a project Projects master file O r ec Last accessed sort cuadradomagico h fundamentos de programaci n i prueba d 5lcc nprojectsprueba pruebsa pr holamundo d 1lcc projecte holamundo pr FA Mis documentosAlcc projecte In Path HA Fundamnentos de Programaci n I 10 11 programa tscuadradomagicocuadradomagico pr 2 source files in project Created Thu Jul 2 12 56 05 010 Tast arre end Wed Sen M1 12 16 08 2010 Figura 1 20 Cuadro de di logo para abrir un proyecto Hay que tener en cuenta que la eliminaci n de un proyecto s lo lo elimina de la lista de proyectos de Icc tanto las carpetas como los archivos fuentes los objeto etc no se eliminan Podemos importar un proyecto completo por ejemplo despu s de haberlo eliminado mediante la opci n IMPORT del men PROJECT e indicando el archivo de proyecto extensi n prj del proyecto que se desea importar 1 4 El depurador 1 4 1 Errores de programaci n A la hora de realizar un programa se pueden dar dos tipos de errores e Errores sint cticos errores en tiempo de compilaci n e Errores en tiempo de ejecuci n Errores en tiempo de compilaci n Se producen por una escritura err nea del programa fuente de form
18. ec projects holamundo c 6 syntax error found end of input expecting F L or El i ink time D LE sec Retur code 1 E 5 build search Figura 1 15 Vista de los errores sint cticos En el caso de que todo vaya correctamente la ventana de salida s lo mostrar el mensaje de que el proceso se ha realizado de forma satisfactoria holamurndo exe built successfully 0 2 zec El build search main b 2 Figura 1 16 Vista de los resultados de la compilaci n de un programa correcto sint cticamente 1 2 4 Ejecutar el programa Para ejecutar el programa hay que utilizar la opci n EXECUTE del men COMPILER CTRL F5 Si se trata de una aplicaci n de consola aplicaci n con salida en modo texto se abrir una ventana del sistema con la salida del programa A C lcAbinirundos exe Hola mundo CiAleciprojectsileciholamundo exe Return code Execution time 0 048 seconds Press any key to continue Figura 1 17 Ventana de salida de la ejecuci n de un programa desde el entorno de desarrollo Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 10 1 3 Trabajar con proyectos Casi todos los entornos de programaci n trabajan con proyectos de hecho cualquier programa fuente debe ser incluido dentro de un proyecto de forma impl cita o expl cita si se desea ejecutarlo Un proyecto es un conjunto de uno o m s programas fuente
19. en PROJECT Tambi n como aparece m s arriba apartado 1 2 3 Compilar el programa si se compila un archivo nuevo que no est todav a integrado en ning n proyecto aparece un cuadro de di logo preguntando si se desea a adir al proyecto actual crear un nuevo proyecto o cancelar la operaci n Figura 1 14 Con los archivos fuentes cargados podemos compilar impedientemente cada uno de los programa fuentes opci n COMPILE NOMBREARCHIVO C del men COMPILER crear un nico programa ejecutable compilando s lo los archivos fuente del proyecto que se hubieran modificaco opci n MAKE del men COMPILER o reconstruir todo el programa ejecutable borrando todos los antiguos programa objeto opci n REBUILD all del men COMPILER El resultado de estas dos ltimas opciones ser un nico programa ejecutable con extensi n exe que se podr ejecutar directamente desde la l nea de rdenes o mediante la opci n EXECUTE NOMBREARCHIVO EXE del mismo men Crear un proyecto llamado prueba y el archivo prueba c con el siguiente c digo amo liaide Solo gt MOL malna vold int variable 5 printf Valor de la variable d Variable 1 3 2 Abrir o borrar proyectos Las opciones OPEN y DELETE del men PROJECT permite respectivamente abrir o eliminar un proyecto existente Ambas muestran un cuadro de di logo muy similar 4 pe T z Aunque el cuadro de di logo para a adir y eliminar archivos del programa fuente incluy
20. grated Development Environment Un IDE figura 1 7 normalmente incluye un editor de textos casi siempre preparado de alguna forma para introducir el programa fuente en un lenguaje determinado y herramientas para compilar y montar el programa sin salir del propio entorno mediante un sistema de men s Adem s suelen incluir otro tipo de herramientas para gestionar los errores sint cticos que se produzcan depuradores de c digo gestores de archivos make make files etc t Herramientas que permiten hacer un seguimiento del programa paso a paso para ver qu valores van tomando las variables en cada una de las instrucciones comprobar si el flujo de control pasa por alg n punto determinado detener la ejecuci n si se da alguna condici n o si se pasa por alg n punto etc Archivos de texto que automatizan la compilaci n de programa complejos Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 4 MM wedit cuadadomagico File Edit Ventana edici n de c digo wedit Search Project Design Compiler Utis Analysis MM cuadadomagico c escribirftuadrado t n f void inicializar uadradoiint t 100 100 i tor int i 0 1 lt n 1 i ftorfint 3 0 3 lt n i 3 14 ELLID nt Indica que la l nea va m s all de la ventana del editor void escribirftuadradofint t 100 100 int ni tor int 11 0
21. ilation of elec projects holamundo c The file Enlecsprojectesholamundo c i not part of the project otropropecto Please indicate which action to take Add this file to the current project Mew project Create a new project with this file Cancel Cancel the whole operation Figura 1 14 Ventana de compilaci n de un programa fuente no incluido en un proyecto En nuestro caso ser un proyecto nuevo por lo que pulsaremos el bot n NEW PROJECT con lo que se indicar que se ha creado el proyecto holamundo y la carpeta d nde se ha guardado A no ser que se indique lo contrario el proyecto se guardar en la carpeta leciprojectsl11ccxx d nde xx es un n mero correlativo En esa carpeta se generar n los archivos necesarios para la compilaci n y el enlace del programa por ejemplo el programa objeto ob3 oelarchivo ejecutable exe El proceso de compilaci n Al utilizar la opci n de compilaci n o la opci n MAKE del men COMPILER O F9 ocurren una serie de acciones transparentes para el usuario En primer lugar wedit llama a propio compilador 1cc exe Este programa leer el archivo fuente y genera el archivo objeto C soporta la compilaci n separada y permite crear varios programas objeto que se enlazar n con el linker 1cc1nk exe Este programa tambi n es necesario para producir el programa ejecutable En el ejemplo se generar a un archivo holamundo obj y el ejecutable holamundo exe El proceso de compilaci n sigue l
22. legal expression e Se ha llegado a la ltima l nea del programa y se ha detectado que la llamada a la funci n prinf requiere cerrar el par ntesis e Tambi n se ha detectado un error en la funci n printf ya que requiere una cadena que no aparece e Todas las instrucciones en C requieren finalizar en un punto y coma semicolon Como no se ha cerrado la cadena se entiende que el punto y coma que aparece pertenece todav a a la cadena e Lafunci n main require cerrar la llave pero se ha llegado al final del archivo fuente y no se ha encontrado ya que el compilador entiende que la llave existente pertenece todav a a la cadena Cerrando la cadena de forma correcta desaparecer an todos los errores que se han detectado Errores en tiempo de ejecuci n A la hora de depurar un programa lo primero es solucionar todos los errores detectados en tiempo de compilaci n Sin embargo eso no quiere decir que el programa sea correcto Puede Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 16 que se haya creado sin problemas el programa ejecutable pero que no realice la funci n para la que ha sido dise ado Estos errores de detectan al ejecutar el programa por lo que se llaman errores en tiempo de ejecuci n Detectar estos errores es m s complicado ya que el entorno no es capaz de averiguar la funci n para la que ha sido dise ado el programa y debe ser el progr
23. nci n printf es la constante de cadena Hola mundo En C las constantes de cadena van encerradas entre comillas dobles Al final de la cadena hay una secuencia de escape 1n que indica que despu s de escribir la cadena por la salida est ndar se har un retorno de carro se salta a la siguiente l nea 6 Alfinal de la instrucci n aparece un punto y coma Las instrucciones en C terminan con el car cter 7 La palabra reservada return indica el valor de retorno que tendr la funci n es decir el valor que devolver la funci n al ser llamada Se trata de un valor entero hay que recordar que la funci n main devuelve un entero que en este caso ser 0 Aunque lo correcto es poner el valor de retornola funci n se podr a evitar incluir esta instrucci n ya que no se har uso de dicho valor 8 La llave de cierre indica el fin de la funci n El programa se guarda con la opci n SAVE del men FILE o pulsando CTRL S con el nombre indicado al principio Normalmente el programa fuente tendr una extensi n c El archivo se guardar si no se indica lo contrario en el directorio 1cc1projects Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 8 1 2 3 Compilar el programa La opci n COMPILE del men COMPILER permite compilar el programa Si tenemos abierto un proyecto pregunta si queremos incluir el archivo fuente en ese proyecto o crear un nuevo proyecto comp
24. os siguientes pasos 1 El archivo fuente primero es preprocesado Se resuelven las directivas include y el c digo de los archivos de cabecera se insertan en el c digo fuente 2 El compilador procesa el texto resultante En este paso genera una serie de instrucciones de c digo intermedio 3 El generador de c digo utiliza ese c digo intermedio y genera instrucciones en lenguaje ensamblador 4 Elensamblador toma esas instrucciones las codifica de forma que la CPU las pueda entender y las empaqueta en el programa objeto 5 Este programa pasa por el linker y crea el ejecutable Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 9 Si durante estos pasos se detecta alg n error sint ctico en el programa fuente la compilaci n se detiene y wedit muestra en la ventana de salida los errores producidos en tiempo de compilaci n es decir los errores sint cticos La figura 1 15 muestra la salida si en el programa holamundo lt no se hubieran cerrado las comillas cpp clecpropects holamundo c 4 Untermnated string or char const Error elec projecte holamundo c 5 illegal expression Error elec projects holamundo c 6 spntax error found end of input expecting Warming clccsprojectesholamundo c 6 printf expects a char pointer as first arg got pointer to void Error cAlec projecteholamundo c 6 Suntas error missing semicolon before end of input Error el
25. p Breakpoint n 100 t lt bad address 0x1 26344 lt bad address 01 26348 lt bad address 01 2634c lt bad address 0x1 26350 lt bad address 01 6 g auto local stack events search Stopped lenarCuadrado 39 16 Figura 1 23 Punto de interrupci n en un programa Cuando el programa se ha detenido en dicho punto es posible quitar el breakpoint pulsando de nuevo F2 Visualizar el estado del programa La ventana inferior muestra el estado de distintos aspectos del programa Permite seleccionar distintos elementos En lo que se refiere al valor de las variables e auto El depurador intenta determinar las variables que se est n utilizando en ese momento y muestra sus valores Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 19 Figura 1 24 La opci n auto muestra las variables j y n ya que son las que se est n utilizando en ese momento e locals Se muestran las variables locales de la funci n actual A J n 1 g auto locale stack events search Stopped Figura 1 25 La opci n locals muestra las variables locales de la funci n llenarCuadrado Tambi n podemos ver el valor de las variables con la opci n WATCHS WaTcHs abre una ventana secundaria donde es posible teclear el nombre de una variable y ver su valor de forma permanente Para insertar una nueva variable en la ventana hay que pulsar la tecla INSERT Para eliminarla se pulsa la tecla D
26. s El entorno de programaci n de Icc tambi n muestra los errores sint cticos en la pantalla de salida de la parte inferior de la ventana A wedit depuraciondeer File Edit Search Project Design Compiler Utils Analysis Window Help include astdio h gt void maln vo1d 4 int variable 5 Error q fundamentos de programaci n i 10 11 Aprogramazc depuraciondeerroreserrores c 6 undeclared identifier Wariable Warming q undamentos de programaci n 1 10 11 Aprogramazc depuraciondeerrores errores c 6 possible usage of arable before definition Compilation link time 0 1 ec Return code 1 El build search main 6 43 Figura 1 22 Ventana de salida de wedit con los errores sint cticos detectados Tanto en la figura 1 21 como en la figura 1 22 aparecen los errores sint cticos del programa errores c Aparece la palabra Error el programa fuente d nde se ha detectado el error la l nea d nde se ha detectado y una explicaci n del mismo Eror Giles Verrores c 6 undeclared identifier Variable En este caso se ha producido un error en la l nea 6 ya que no se ha declarado el identificador Variable la declaraci n del identificador se ha hecho en min sculas Tambi n muestra los warnings advertencias que indican posibles problemas pero que pueden no ser cr ticos Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 15 Hay que tener en cuenta que
27. t n i 1 4 la l nea for int j 0 j lt n i j Figura 1 8 Ventana del editor de c digo Otra utilidad del editor de c digo es la posibilidad de ver los distintos niveles de las llaves en el c digo fuente La opci n LeveL del men EDIT permite visualizar una columna con los niveles de las llaves Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 5 E cuadadomagico c E void llenartuadradofint t 100 100 int y la oid malin vo1d 4 int n J int t 100 100 inicializartuadrado t n llenarfuadradoft n escribirtuadradof t n toid inicializarCuadrado int t 100 100 lortint i 0 i lt n i i forint j 0 73 lt n 1 3 4 flia ll void escribirCuadradofint t 100 100 intl w Figura 1 9 Niveles de llaves en el editor de c digo Otra posibilidad del editor es ver los cambios que se han realizado desde la ltima carga del programa En el men EDIT la opci n SHOW CHANGES muestra una ventana con los cambios que se han realizado A wedit holamundo lola Ez File Edit Search Project Design Compiler Utis Analysis Window Help E holamundo c finclude lt 10 h ola mundo Qu talY n Edited CAlecAnrruect h nlamonda_r Erase 7 lines heninninda mukh line 4 3 void maln f 4 1 printti Hola mundo Qu tal 5n I 3 void maini 4
28. tintos aspectos del programa Introducci n al lenguaje C UPSAM Escuela Superior de Ingenier a y Arquitectura Lu s Rodr guez Baena 2012 17 E wedit cuadradomagico cuadradomagico main c Bl File Edit Search Project Design Debug Utils Modules Window Help include lt tdio h gt void inicializarftuadrado int t 100 100 int np void escribirtuadradof int t 100 100 int n void llenarCuadrado int t 100 100 int n L nea que se va a ejecutar int comprobartuadradofint t 1007 100 int n int n 9 int t 100 100 inicializartuadrado t n llenarftuadradof t n escribirfuadrado t n 1 comprobartuadrado t n 1 Ventana de salida printf Es n gico 1 tel ef n 100 t lt bad address Dx1 b6344 gt lt bad address 01 26348 lt bad address 0x1 2634c lt bad address 0x1 26350 lt bad address 0x1 26 Opciones de visualizaci n g auto locals stack events search Stopped main 11 1 Figura 1 22 Ventana de depuraci n Control de la ejecuci n del programa En el men DEBUG existen distintas opciones para controlar la ejecuci n del programa e EXECUTE F5 Ejecuta el programa hasta el siguiente punto de interrupci n breakpoint e STEP IN F8 Ejecuta la l nea actual del programa Si se trata de la llamada a una funci n el control pasar a la primera l nea de dicha funci n e SAME LEVEL F4 Ejecuta la l nea actual del programa Si se trata de la llamada a una funci n

Download Pdf Manuals

image

Related Search

Related Contents

Scotts 18320 Installation Guide  Soundmaster IR4000SW  Bischoff & Bischoff Mode d`emploi Tobago  Philips AZ1846 MP3 CD Soundmachine    

Copyright © All rights reserved.
Failed to retrieve file