Mayo 2017 Elaborado por: Ing. Beatriz Eugenia Marín Robledo
UN POCO DE HISTORIA… El lenguaje C fue diseñado por Dennis Ritchie y Brian Kernigham, de los laboratorios Bell de AT&T en el inicio de los años 1970. Fue derivado de un lenguaje de computación llamado B (escrito por Ken Thomson) y del lenguaje anterior BCPL (escrito por Martin Richards). Fue inicialmente diseñado como lenguaje de programación del sistema operativo UNIX pero posteriormente se expandió y se utiliza en muchos otros sistemas operativos como Linux, MS-DOS, etc.
Las facilidades del sistema UNIX dieron cientos de funciones
disponibles para el programador de C acoplados en diferentes librerías. Escribiendo en el lenguaje C y utilizando las librerías del sistema UNIX (faciles de acceder) fue creado un fuerte y poderoso sistema de programación, un lenguaje que unía la abstracción de los lenguajes de alto nivel con la eficiencia del lenguaje máquina. CARACTERISTICAS DEL LENGUAJE C: 1. Está orientado a la programación de sistemas pero también tiene uso general como hojas de cálculo, gestores de bases de datos, compiladores, etc. 2. C se llama lenguaje de medio nivel porque combina los elementos de lenguaje de alto nivel con la funcionalidad y la rapidez del lenguaje Ensamblador. 3. Es altamente transportable (portátil). Es independiente de la arquitectura de cualquier máquina en particular, no está pegado a ningún hardware ni a ningún sistema operativo. 4. Es muy flexible y rápido. 5. Es un lenguaje potente y eficiente. 6. Es muy expresivo pues se pueden realizar muchas funciones escribiendo pocas líneas de código. CARACTERISTICAS…(CONTINUACIÓN) 7. El lenguaje C se conoce como un lenguaje compilado pues utiliza compilador. 8. Es un lenguaje estructurado, orientado a mejorar la calidad y tiempo del desarrollo de un programa, utilizando subrutinas y tres estructuras (lineales, secuenciales y cíclicas). 9. Su excelente biblioteca estándar de funciones convierte a C en uno de los mejores lenguajes de programación que los profesionales informáticos pueden utilizar. 10. Es relativamente pequeño; se puede describir en poco espacio y aprender rápidamente. 11. Se hace adecuado para la programación en áreas como: Programación de sistemas, Aplicaciones científicas, Estructuras de datos y sistemas de bases de datos, Software gráfico, Análisis numérico. DIFERENCIAS ENTRE EL LENGUAJE C Y C++ C++ es una versión mejorada del lenguaje C. Aunque tienen una sintaxis común los dos lenguajes son muy diferentes en naturaleza. C es un lenguaje procesal. Su método general de programación es romper la tarea en tareas más pequeñas. Esto se conoce como diseño de arriba hacia abajo. C++ es un lenguaje orientado al objeto. Para solucionar un problema con C++ el primer paso es diseñar clases que son abstracciones de objetos físicos.
C++ incluye todo lo que es parte de C y agrega soporte para
programación orientada a objetos (POO). CICLO DE DESARROLLO DEL PROGRAMA A. Crear un archivo que contiene su codigo fuente utilizando un editor. B. Compilar el código fuente para crear un archivo objeto. C. Vincular el código compilado con las librerías para crear un archivo ejecutable. D. Ejecutar el programa para considerar si funciona o no. EJECUTAR EL PROGRAMA a. Si ejecuta el programa y recibe resultados diferentes de lo que estaba esperando, necesita ir de nuevo al primer paso. b. Debe identificar qué causó el problema y corregirlo en el código fuente. c. Cuando realiza un cambio al código fuente, necesita recompilar y revincular el programa para crear una versión corregida del archivo ejecutable. d. Después siga este ciclo hasta que consiga un programa que se ejecuta y comporta exactamente como se pensó. Aunque se mencionan la compilación y la vinculación como dos acciones separadas muchos compiladores, tales como los compiladores del DOS, hacen ambos como un solo paso. Hoy los compiladores de C son muy sofisticados e incluyen medios integrados desde los cuales podemos editar, compilar, vincular y ejecutar el programa. ESTRUCTURA DE UN CODIGO EN LENGUAJE C Aquí se muestra un programa muy simple para mostrar un texto en la pantalla: 1 /*Programa ejemplo de como imprimir un texto en la pantalla*/ 2 #include <stdio.h> 3 #include <conio.h> 4 main() 5 { 6 printf(“Bienvenidos al mundo de la programación. \n”); 7 getch(); 8 return 0; 9 } No Linea Contenido Explicación 1 /* */ Indica un comentario 2 #include <stdio.h> Directiva de preprocesamiento que se usa para incluir las declaraciones de otro archivo en la compilación. Archivo de Encabezado que declara las funciones de entrada y salida estándar . Significa “standard input/output” (entrada del teclado y salida del monitor). 3 #include <conio.h> Archivo de encabezado que declara las funciones de la consola de entrada y salida. Significa “I/O Consola” 4 main() Se declara la función main. Es el punto de entrada a la ejecución del programa, donde el programador toma el control del mismo. Que los parentesis estén vacíos indica que la función main no regresa nada al sistema operativo. La función main(void) significa que esta función no tiene argumentos. 5 { La deinición de la función está formada por un bloque de sentencias que están encerradas entre llaves. No Linea Contenido Explicación 6 printf(“ texto “); Esta función de la biblioteca estandar de C se utiliza para imprimir cadenas de caracteres a la pantalla. Las cadenas de caracteres deben ir encerradas entre comillas dobles. \n Símbolo que indica un cambio de linea Cada función debe terminar con “;”, que indica fin de la misma. 7 getch(); Función que lee caracter por caracter pero no muestra por pantalla el carácter leído. 8 return 0; La función return regresa un valor determinado, en este caso el valor es 0. 9 } Con esta llave se muestra el final del programa
Nota: Si el texto de la linea 6 es muy largo se puede escribir en varias lineas utilizando “Texto” en cada linea.
6 printf(“Bienvenidos al mundo de la programación.”
7 “Este es un programa en lenguaje C. \h”); REFERENCIAS
Collins, J. (2011). Programación I. Lenguaje C/C++. Editorial ALEC. México.
Cairó, O. (2006). Fundamentos de programación. Piensa en C. Pearson Educación. México.