C es un lenguaje de programación de propósito general. Sus principales características son:

  • Programación estructurada
  • Economía de las expresiones
  • Abundancia en operadores y tipos de datos.
  • Codificación en alto y bajo nivel simultáneamente.
  • Reemplaza ventajosamente la programación en ensamblador (assembler).
  • Utilización natural de las funciones primitivas del sistema.
  • No está orientado a ningún área en especial.
  • Producción de código objeto altamente optimizado.
  • Facilidad de aprendizaje (;-)).

El lenguajes C nació en los Laboratorios Bell de AT&T y ha sido estrechamente 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 de C y la casi totalidad de los programas y herramientas de UNIX, fueron escritos en C. Su eficacia y claridad han hecho que el lenguaje asembler apenas haya sido utilizado en UNIX.

Este lenguajes está inspirado en el lenguaje B escrito por Ken Thompson en 1970 con intención de recodificar el UNIX, que en la fase de arranque esta escrito en asembler, en vistas a su transportabilidad a otras máquinas. B era un lenguaje evolucionado e independiente de la máquina, inspirado en la lenguajes BCPL concedido por Martin Richard en 1967.

En 1972, Dennis Ritchie, toma el relevo y modifica el lenguaje B, creando el lenguaje C y reescribiendo el UNIX en dicho lenguaje. La novedad que proporcionó el lenguaje C sobre el B fue el diseño de tipos y estructuras de datos.

Una de las peculiaridades de C es su riqueza de operadores, Puede decirse que prácticamente dispone de un operador para cada una de las posibles operaciones en código máquina.

Finalmente, C, que ha sido pensado para ser altamente transportable y para programar lo improgramable, igual que otros lenguajes tiene sus inconvenientes:

  • Carece de instrucciones de entrada/salida, de instrucciones para manejo de cadenas de caracteres, con lo que este trabajo queda para la biblioteca de rutinas, con la consiguiente pérdida de transportabilidad
  • La excesiva libertad en la escritura de los programas puede llevar a errores en la programció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.

A pesar de todo, C ha demostrado ser un lenguaje extremadamente eficaz y expresivo.

Last modified: Thursday, 20 September 2012, 11:18 PM