-
El lenguaje C fue desarrollado en 1972 por Dennis Ritchie en los laboratorios de AT&T (American Telephone &Telegraph), en Estados Unidos.
-
El lenguaje C fue desarrollado para superar problemas encontrados con lenguajes previos como B, BCLP, etc.
Además, fue desarrollado para ser utilizado en el sistema operativo UNIX. -
Entre 1973 y 1980, el lenguaje C evolucionó de forma gradual: unsigned, long, union y tipos de enumeración fueron añadidos a los tipos de estructuras, y las estructuras se convirtieron en objetos de primera clase.
-
Brian Kernighan y Dennis Ritchie publicaron "The C Programming Language", el cual sirvió como una referencia para el lenguaje hasta que se estableciera un estándar.
-
El lenguaje C puede ser utilizado para diseñar buscadores, sistemas operativos, aplicaciones de teléfonos inteligentes, bases de datos y más.
-
C++ fue desarrollado por Bjarne Stroustrup, en los laboratorios Bell. Puesto que C++ es un intento de incluir aspectos en orientación a objetos en C, en sus inicios se le llamaba "C con objetos". En eso radica la principal diferencia entre ambos lenguajes, siendo C un lenguaje manejado por funciones y C++ un lenguaje manejado por objetos.
-
En 1983 ANSI (American National Standards Institute) formó un comité que más adelante estandarizó el lenguaje C. Desde entonces ha sido conocido como ANSI Standard C o con la etiqueta C89.
-
En 1995 ISO publicó una extensión, llamada Enmienda 1, para el estándar ANSI-C. Esto trajo consigo ciertos cambios en las capacidades del lenguaje.
-
En marzo de 2000, ANSI adoptó el estándar ISO/IEC 9899:1999, referido como C99. Algunas mejoras en comparación al estándar anterior son:
Nuevas librerías, como stdint.h, complex.h
Mejora en la compatibilidad de aspectos de C++
Se removieron aspectos riesgosos de C89, como declaraciones implícitas -
Ventajas:
Es un leguaje portable, posee funciones incluidas, está basado en estructuras, implementa algoritmos y estructuras de datos, provee memoria dinámica. Desventajas:
Los errores son detectados una vez que se corre sentencia por sentencia, no es posible declarar variables con el mismo nombre, la seguridad en el lenguaje es mínima. -
El lenguaje C es parte de los fundamentos de muchos otros lenguajes incluidos C++, C-, C#, Objective-C, BitC, C-shell, csh, D, Java, JavaScript, Go, Rust, Julia, Limbo, LPC, PHP, Python, Perl, Seed7, Vala, Verilog...