Introducción y características del lenguaje C
Es un proceso de desarrollo iniciado con el lenguaje BCPL, que fue el predecesor o la influencia al lenguaje B, creado por Ken Thompson. Este lenguaje B es el que llevó a la aparición al lenguaje C en la década de los 70.
Más concretamente el lenguaje C fue inventado por el laboratorio BELL en el año 1972 por Dennis Richiecon. La idea era crear un lenguaje de propósito general, su lanzamiento público fue en el año 1978, pero posteriormente sufre grandes variaciones. Aparecen distintas versiones de C, por lo que provoca una gran incompatibilidad entre ellas. Esto empieza a cambiar en 1983, donde ANSI (American National Standard Institute) crea un comité para obtener una definición no ambigua del lenguaje C, de esta forma quedó establecido lo que se conoce como ANSI C en 1989.
C++ es un lenguaje derivado de C y Orientado a Objetos, aunque C++ se considera un lenguaje independiente de C
Características de C
- C es un lenguaje de propósito general, quiere decir que puede utilizarse para varias funciones o propósitos como acceder a la impresora o a bases de datos, comunicación entre dispositivos, cálculos matemáticos... Es un lenguaje ideal para la implementación de cualquier tipo de programas, ya sean científicos, administrativos, educativos, de control, de entretenimiento...
- Es un lenguaje portable, puede funcionar en cualquier ordenador, ya sea APPLE o PC's, en cualquier Sistema Operativo (Windows, MAC, DOS, Linux..., y funciona desde en equipos mini hasta super computadoras. Todo esto es gracias a que el lenguaje C es independiente del hardware.
- C es el lenguaje predominante en UNIX / LINUX, sustituyendo al BASIC, mientras que en WINDOWS es el C++, su versión Orientada a Objetos.
- C es compatible, el código escrito para una máquina concreta, es transferible fácilmente a otra máquina.
- Permite generar programas de fácil modificación.
- Es veloz y potente, lo que le permite crear un software efectivo.
- Posibilita una programación estructurada y modular debido a que utiliza tanto estructuras de control para reducir los fallos al mínimo, descomponiendo las acciones o problemas en otros más simples que se resuelven con más facilidad, como módulos que se comunican entre sí para hacer funcionar el programa, conteniendo sus propios datos y llamando a otros módulos o funciones.
- Aunque es un lenguaje de alto nivel mantiene algunas de las características de los lenguajes de bajo nivel. Tiene las estructuras de los lenguajes de alto nivel pero también construcciones del lenguaje que permiten un control a bajo nivel.
- Es un lenguaje compilado ya que se traduce el programa mediante un compilador a lenguaje máquina y se crea un archivo ejecutable, a diferencia de los lenguajes interpretados, que son traducidos al lenguaje máquina intrucción por instrucción cada vez que se ejecuta el programa. Por lo que los programas compilados se ejecutan mucho más rápido por norma general.
- El código fuente se escribe mayoritariamente en minúsculas.
- No tiene editor propio o particular, para escribir el programa fuente en C es posible utilizar cualquier editor siempre que genere ficheros en ASCII.
- La modularidad en C tiende a incrementar el tiempo de compilación.
- Es un lenguaje poco legible y eminentemente críptico, lo que da como resultado un código poco entendible si no se utilizan comentarios.