Lenguaje De Programación C
Enviado por lscgarcia • 21 de Agosto de 2012 • 2.207 Palabras (9 Páginas) • 548 Visitas
INTRODUCCIÓN
El lenguaje C es un tipo de programa con el cual podemos realizar distintos tipos de operaciones, con las cuales se facilita el manejo y realización de implementaciones.
El lenguaje C fue inventado e implementado en una máquina Unix, por Dennis Ritchie, en los años 70. C fue "sucesor", por así decirlo, de un lenguaje llamado B, que a su vez descendía de otro llamado BCPL. Tras muchos años de ser un lenguaje sin reglar, en el verano de 1983 se decidió formar un comité para crear el estándar ANSI (Instituto Nacional Americano de Estándares) y así formalizar el lenguaje. Pero, este proceso, no fue nada corto. Tiempo después, se establece el estándar ANSI del lenguaje C, en diciembre de 1989, este se comenzó a comercializar a partir de los años 90.
Este estándar, fue reconocido y aceptado por la ISO (Organización Internacional de Estándares). Cuando hacemos referencia a ese estándar, solemos hablar de C89.
En 1995 C89 se amplía con varias funciones y se asientan las bases de lo que más tarde sería C++. Con el desarrollo de este nuevo lenguaje, C quedó algo apartado, pero en 1999 se definió otro estándar, el C99. C99 era prácticamente el estándar C89, si bien con funciones y bibliotecas nuevas y algunas características innovadoras.
HISTORIA DEL LENGUAJE C
Desarrollo inicial
El desarrollo inicial de C se llevó a cabo en los Laboratorios Bell de AT&T entre 1969 y 1973; según Ritchie, el periodo más creativo tuvo lugar en 1972. Se le dio el nombre "C" porque muchas de sus características fueron tomadas de un lenguaje anterior llamado "B".
El desarrollo de C fue el resultado del deseo de los programadores de jugar con Space Travel. Habían estado jugando en el mainframe de su compañía, pero debido a su poca capacidad de proceso y al tener que soportar 100 usuarios, Thompson y Ritchie no tenían suficiente control sobre la nave para evitar colisiones con los asteroides. Por ese motivo decidieron portar el juego a un PDP-7 de la oficina que no se utilizaba; pero esa máquina no tenía sistema operativo, así que decidieron escribir uno.
Finalmente decidieron portar el sistema operativo del PDP-11 que había en su oficina, pero era muy costoso, pues todo el código estaba escrito en lenguaje ensamblador.
Entonces decidieron usar un lenguaje de alto nivel y portátil para que el sistema operativo se pudiera portar fácilmente de un ordenador a otro. Consideraron usar B, pero carecía de las funcionalidades necesarias para aprovechar algunas características avanzadas del PDP-11. Entonces empezaron a crear un nuevo lenguaje, C.
La justificación para obtener el ordenador original que se usó para desarrollar Unix fue crear un sistema que automatizase el archivo de patentes. La versión original de Unix se desarrolló en lenguaje ensamblador. Más tarde, el lenguaje C se desarrolló para poder reescribir el sistema operativo.
En 1973, el lenguaje C se había vuelto tan potente que la mayor parte del kernel Unix, originalmente escrito en el lenguaje ensamblador PDP-11/20, fue reescrita en C.
Éste fue uno de los primeros núcleos de sistema operativo implementados en un lenguaje distinto al ensamblador. (Algunos casos anteriores son el sistema Multics, escrito en PL/I, y Master Control Program para el B5000 de Burroughs, escrito en ALGOL en 1961).
EL C DE KERNIGHAN Y RITCHIE
En 1978, Ritchie y Brian Kernighan publicaron la primera edición de El lenguaje de programación C, también conocido como La biblia de C. Este libro fue durante años la especificación informal del lenguaje.
El lenguaje descrito en este libro recibe habitualmente el nombre de "el C de Kernighan y Ritchie" o simplemente "K&R C" (La segunda edición del libro cubre el estándar ANSI C, descrito más abajo.)
Kernighan y Ritchie introdujeron las siguientes características al lenguaje:
• El tipo de datos struct.
• El tipo de datos long int.
• El tipo de datos unsigned int.
• Los operadores =+ y =- fueron sustituidos por += y -= para eliminar la ambigüedad sintáctica de expresiones como i=-10, que se podría interpretar bien como i =- 10 o bien como i = -10.
El C de Kernighan y Ritchie es el subconjunto más básico del lenguaje que un compilador debe de soportar. Durante muchos años, incluso tras la introducción del ANSI C, fue considerado "el mínimo común denominador" en el que los programadores debían programar cuando deseaban que sus programas fueran transportables, pues no todos los compiladores soportaban completamente ANSI, y el código razonablemente bien escrito en K&R C es también código ANSI C válido. En estas primeras versiones de C, las únicas funciones que necesitaban ser declaradas si se usaban antes de la definición de la función eran las que retornaban valores no enteros. Es decir, se presuponía que una función que se usaba sin declaración previa (prototipo) devolvería un entero.
Ejemplo de llamada que requiere declaración previa (prototipo):
Long int cierta_funcion ();
Int llamando_funcion ()
{
Long int ret;
Ret = cierta_funcion ();
}
Ejemplo de llamada que no requiere declaración previa:
Int llamando_funcion ()
{
Int ret;
Ret = alguna_otra_funcion ();
}
Int alguna_otra_funcion ()
{
Return 0;
}
Dado que el lenguaje C de K&R no incluía ninguna información sobre los argumentos de las funciones, no se realizaba comprobación de tipos en los parámetros de las funciones, aunque algunos compiladores lanzan mensajes de advertencia si se llamaba a una función con un número incorrecto de argumentos.
En los años siguientes a la publicación del C de Kernighan y Ritchie, se añadieron al lenguaje muchas características no oficiales, que estaba soportadas por los compiladores de AT&T, entre otros. Algunas de estas características eran:
• Funciones void y el tipo de datos void *.
• Funciones que retornaban tipos de datos struct o union (en lugar de punteros).
• Asignación de tipos de datos struct.
• Calificador const, que hace que un objeto sea de sólo lectura.
• Una biblioteca estándar, que incorporaba la mayoría de las funcionalidades implementadas por varios desarrolladores de compiladores.
• Enumeraciones.
ANSI C E ISO C
A finales de la década de 1970, C empezó a sustituir a BASIC como lenguaje de programación de microcomputadores predominante. Durante la década de 1980 se empezó a usar en los IBM PC, lo que incrementó
...