Programación en C

Click here to load reader

  • date post

    11-Oct-2015
  • Category

    Documents

  • view

    13
  • download

    0

Embed Size (px)

Transcript of Programación en C

  • Programacin en C

    Prlogo El avance de la tecnologa y la concurrente entrega de informacin, nos permite generar una edicin, variable y alternativa en la enseanza del lenguaje de programacin que ms impacto social ha tenido en la historia de la informtica. Este libro ha sido forjado con la incansable ayuda de informticos de habla hispana, quienes byte a byte han colaborado por hacer de la informacin una fuente de conocimiento global. De la misma forma, contina hoy siendo modificado en una constante bsqueda de superacin de la calidad.

    Esta obra est llamada a ser la piedra angular en la enseanza de la programacin, logrando abarcar todos los aspectos del lenguaje en diversos niveles y de esta forma ser tanto una referencia tcnica para quienes ya dominan el lenguaje como una introduccin sencilla para quienes estn empezando a conocerlo.

    Viajaremos por la historia del lenguaje, veremos su propsito e indagaremos en la ciencia de la programacin. El fin es otorgar al lector una doctrina clara de la programacin y el lenguaje C; lo induciremos a conseguir un manejo importante del lenguaje.

    Para quin es este libro? Este libro est dirigido a todos los que deseen obtener conocimientos de programacin, pues el objetivo explcito que nos ha motivado a crearlo es difundir la importancia del lenguaje C en el mundo de la informtica. Si nos enfocamos a un grupo social especfico, podremos indicar que este libro contribuir con los estudiantes de carreras del rea informtica, debido a que los temas convenidos, son parte de su plan de estudios.

    Por qu otro manual de C? Porque el lenguaje C es la base fundamental de la programacin. Para quienes estn en el ambiente de la informtica es crucial tener por lo menos nociones de este lenguaje. Varios sistemas operativos, cientos de bibliotecas, y miles de programas estn construidos utilizando C, al conocerlo es posible entender, colaborar y desarrollar en este lenguaje.

    Los sistemas, programas, juegos y herramientas que nosotros disfrutamos hoy fueron construidos por personas como nosotros, que empezaron con nuestro mismo potencial y fueron aprendiendo a hacer cosas fantsticas con las herramientas que tenan a mano.

    Una razn importante para otro libro de lenguaje C es tambin que los libros existentes muestran muy poca documentacin de calidad. En Internet existe una cantidad inmensa de informacin publicada pero est dispersa, y mal manejada en algunos sitios. Es la intencin de este libro crear un buen compendio de informacin, que permita a los interesados aprender a programar en C.

    Enlaces Nociones bsicas de programacin (generales, independientes del lenguaje):

    Fundamentos de programacin

    Wikilibro similar a ste en ingls

    C Programming

    esquema de operadores y expresiones

  • [1]

    Licencia y autores

    Copyright 2004 Envite

    Copyright 2005 Alejandro Moreno Calvo

    Copyright 2006 Andreu Correa Casablanca

    Copyright 2009 zerohours

    Ver el historial de cada pgina para el resto de autores.

    Cmo contribuir a este WikiLibro? Contribuir con este libro es muy simple primero deberas registrarte un usuario y/o entrar (esto no es necesario pero si muy conveniente) a Wikilibros, para que podamos identificar tus ediciones. Luego, si nunca has contribuido en un proyecto de wikipedia o en otro wiki deberas leer el manual de uso de wikilibros.

    Una vez hecho esto todo lo que tienes que hacer es agregar el contenido que consideres necesario para el libro. Para editar cualquier seccin basta con hacer click al link que dice editaren la pestaa en la parte superior de la pagina, seria bueno revisar (antes de editar cualquier cosa) la pestaa de discusin que est ah para ser usada. Ten en cuenta que el material que ya est fue escrito por personas que deseaban contribuir igual que t, as que trata de respetarlo. Aunque con esto no me refiero a que si se necesita alguna correccin, reorganizacin, quitar partes que sean ambiguas, no dejes de hacerlo. Lo mejor sera que todos contribuyramos de cualquier manera al libro.

    Adems, es recomendable consultar la pgina de discusin del libro y la del articulo en particular que quieras modificar, ya que de esta manera se pueden coordinar esfuerzos.

    Recuerda que todo el contenido que aadas al libro es publicado bajo la licencia GFDL, por lo que no uses material que no haya sido escrito por ti o que no est ya publicado bajo GFDL. Recientemente wikimedia decidi adoptar la Licencia Creative Commons Compartir-Igual 3.0 para todos los aportes, por lo que actualmente el libro tiene una licencia dual.

    Introduccin

    Objetivos El objetivo principal de este Wikilibro es que cualquier persona sin conocimientos previos de programacin pueda ser capaz de programar en el lenguaje C.

    Una vez logrado el dominio del lenguaje, es probable que los lectores se interesen por otros temas ms complejos que superen a los temas bsicos. Tambin les ser ms o menos sencillo aprender cualquier otro lenguaje de programacin estructurada.

    Sin embargo, este no es un libro que apunte nicamente a programadores principiantes. Tambin puede resultar de inters para quienes ya tengan experiencia en el rea de programacin. En esta introduccin hay dos secciones en las que se explica para los dos grupos principales de lectores qu camino seguir para comenzar a programar en el lenguaje C o bien perfeccionar conocimientos.

    El lenguaje C es tan usado porque es un lenguaje de programacin que emplea pocas instrucciones en lenguaje mquina para traducir elementos del cdigo. Esto reduce los tiempos de ejecucin de los programas.

    Nota sobre la exactitud

  • Muchas de las cosas expresadas en este wikilibro, especialmente en los primeros captulos, no son completamente exactas, aunque son buenas aproximaciones. Los detalles ms exactos irn apareciendo posteriormente, una vez que los materiales anteriores hayan sido correctamente asimilados por el lector. En general, dadas dos definiciones o datos contradictorios en este wikilibro, debe considerarse siempre como ms exacto al segundo, habiendo aparecido el primero como una introduccin ms general al tema.

    Estndar utilizado El lenguaje C fue creado en los aos setenta, y a lo largo de su historia ha pasado por muchas modificaciones, tanto con respecto a la sintaxis como con respecto al cdigo incluido dentro de la biblioteca estndar. Es por ello que se fueron desarrollando estndares, para que todos sepan con qu versin del lenguaje se est trabajando.

    Los distintos estndares del lenguaje C han sido: el C de Kernighan y Ritchie, un estndar no-oficial que surgi luego de la publicacin de su libro en 1978; el C89 o C90, el primer estndar oficial, posterior a la publicacin de los estndares ANSI en 1989 e ISO en 1990; y el C99, publicado en 1999.

    En este libro se utilizar el estndar C99, si bien por cuestiones de estilo y compatibilidad muchas veces se utilizar cdigo compatible con el estndar C89.

    Para los principiantes Para quien no haya programado antes, es recomendable seguir el orden del libro. Los temas estn especialmente organizados de manera incremental o acumulativa. Tal vez, lo que se te va a hacer ms til en el camino del aprendizaje es la constancia; s terco, no trastabilles, no te rindas, tal vez tu pregunta sea cuntas veces tengo que intentar?, las veces necesarias para lograr tu objetivo, sera la respuesta.

    Claro que el principal enemigo de nosotros los humanos es el tiempo y por eso en caso de que de verdad ests trancado en algo busca ayuda de alguien que sepa "ms que t". Que no tienes a nadie a tu alrededor con esa caracterstica? Tal vez no buscaste bien y tal vez quieras usar la red de redes. Utiliza los buscadores, pregunta en IRC, en foros de programacin, en listas de correo.

    Para los ms avanzados El lanzamiento queda libre por supuesto, solo t sabes lo que necesitas. Las reglas del juego son las mismas de siempre: primero saber lo que se quiere o necesita y atacar por ah.

    En este caso, te ser til acceder a los contenidos a partir del ndice, eligiendo slo aquellos que te sean necesarios.

    Requisitos Se presupone que los lectores tienen conocimientos elementales de informtica a nivel de usuario, y son capaces de instalar un compilador del lenguaje C en sus sistema. Los detalles sobre la instalacin se vern en la seccin Herramientas.

    Con respecto al Hardware, slo ser necesario contar con una PC con sistema operativo, donde sea posible instalar un compilador, y en lo posible un entorno de desarrollo. Cuanto mejor sea la computadora, ms rpido ser el proceso de compilacin y ejecucin de los programas. Sin embargo, cualquier PC sirve para aprender con los ejemplos de este libro.

    Para quienes no tengan conocimientos bsicos de programacin, puede ser una buena idea comenzar leyendo los primeros captulos del Wikilibro Fundamentos de programacin, ya que algunos temas explicados en ese libro se asumen ya conocidos.

  • Finalmente, un requisito imprescindible en todo programador o programadora es tener sentido comn. Muchas veces se pueden adoptar mejores o peores soluciones ante los diversos problemas, y la decisin de cul elegir pasa por la aplicacin del sentido comn. yapa

    Herramientas Para programar tanto en C, como en C++, Java o cualquier otro lenguaje de programacin, necesitamos contar con aplicaciones o herramientas que nos permitan poner en funcionamiento nuestro programa.

    El lenguaje de programacin C es compilado, as que en este caso necesitaremos un compilador, que ser el encargado de transformar nuestro cdigo fuente en cdigo que la computadora pueda ejecutar.

    Adems, para facilitar la tarea de los programadores existen los denominados Entorno de desarrollo integrados (IDE). En muchos casos, estos entornos incluyen un compilador, un depurador, y otras herramientas.

    Las herramie