1. B R Y A N A R E L L A N O
E S C U E L A D E I N G E N I E R Í A
PONTIFICIA UNIVERSIDAD
CATÓLICA DEL ECUADOR SEDE-
IBARRA
Compiladores para C
2. Nació en los Laboratorios Bell de AT and T y
ha sido asociado con el sistema operativo
UNIX, ya que su desarrollo se realizó en este
sistema y debido a que tanto UNIX como el
propio compilador C y la casi totalidad de los
programas y herramientas de UNIX, fueron
escritos en C.
3. AT&T lo diseño como un compilador (comp.
C) llamado K&R C que junto con el sistema
operativo UNIX empezaron a invadir
universidades. Después, cada persona que
adquiría una copia de UNIX recibía un
compilador de C gratis.
El lenguaje mas popular fue C. Por lo tanto
UNIX fue escrito en C. Entonces si Ud. quería
entender UNIX Ud. tenia que aprender C. La
característica era que C era gratis y entonces
nadie se sentía presionado a aprenderlo. Cual
fue el resultado?, un gran estándar.
4. Luego C se convirtió en un gran estándar,
entonces las compañías introducían sus
propios compiladores C. Incluyendo que
pudiesen ejecutarse en otros sistemas
operativos que no fuesen UNIX.
Cada uno de estos compiladores introducía
ensanchamientos diseñados para mejorar las
limitaciones que mostraba el modelo original.
Pero las modificaciones que cada quien hacia
traía como resultado la incompatibilidad de las
versiones entre si, entonces incrementaba la
demanda por un estándar a nivel nacional.
5. Entonces en 1987 nació el primer estándar "The
American National Standars Institute (ANSI)
version of C" esta versión fue mejor conocida
como ANSI C o C estándar. C++ esta basado en
estos compiladores y por lo tanto es el mas
compatible con ANSI C.
6. Características
Programación estructurada.
Economía de sus expresiones.
Abundancia en operadores y tipos de datos.
Codificación en alto y bajo nivel simultáneamente.
Reemplaza ventajosamente la programación en
assembler.
Utilización natural de las funciones primitivas del
sistema.
No esta orientado a ningún área en especial.
Producción de código objeto altamente optimizado.
Facilidad de aprendizaje.
7. Carece de instrucciones de entrada/salida, de
instrucciones para manejo de cadenas de
caracteres , con lo que este trabajo queda para la
librería de rutinas con la consiguiente perdida de
transponibilidad.
La excesiva libertad en la escritura de los
programas puede llevar a errores en la
programación que, por ser correctos
sintácticamente no se detectan a simple vista.
Por otra parte las precedencias de los
operadores convierten a veces las expresiones en
pequeños rompecabezas