2. Características
Tamaño pequeño.
Uso extensivo de llamadas a funciones.
Comandos breves (poco tecleo).
Lenguaje estructurado.
Programación de bajo nivel (nivel bit)
Implementación de apuntadores - uso
extensivo de apuntadores para la memoria,
arreglos, estructuras y funciones
El uso de constructores de alto nivel.
El poder manejar actividades de bajo-nivel.
El generar programas eficientes.
3. Funciones
En la actualidad lenguaje c es usado para aplicaciones
de bajo nivel como:
Adquisición de datos.
Creación de programas sencillos.
Ejecutables para algunas tareas.
Control de procesos
4. Ventajas
Un núcleo del lenguaje simple, con funcionalidades
añadidas importantes, como funciones matemáticas y de
manejo de archivos, proporcionadas por bibliotecas.
Es un lenguaje muy flexible que permite programar
con múltiples estilos. Uno de los más empleados es el
estructurado "no llevado al extremo" (permitiendo ciertas
licencias de ruptura).
Un sistema de tipos que impide operaciones sin
sentido.
Usa un lenguaje de preprocesado, el preprocesador
de C, para tareas como definir macros e incluir múltiples
archivos de código fuente.
5. Ventajas
Acceso a memoria de bajo nivel mediante el uso de
punteros.
Interrupciones al procesador con uniones.
Un conjunto reducido de palabras clave.
Por defecto, el paso de parámetros a una función se
realiza por valor. El paso por referencia se consigue
pasando explícitamente a las funciones las direcciones
de memoria de dichos parámetros.
Punteros a funciones y variables estáticas, que
permiten una forma rudimentaria de encapsulado y
polimorfismo.
Tipos de datos agregados (struct) que permiten que
datos relacionados (como un empleado, que tiene un id,
un nombre y un salario) se combinen y se manipulen
como un todo.
6. Desventajas
Recolección de basura nativa, sin embargo se
encuentran a tal efecto bibliotecas como la "libgc"
desarrollada por Sun Microsystems, o el Recolector de
basura de Boehm.
Soporte para programación orientada a objetos,
aunque la implementación original de C++ fue un
preprocesador que traducía código fuente de C++ a C.
Encapsulación.
Funciones anidadas, aunque GCC tiene esta
característica como extensión.
Polimorfismo en tiempo de código en forma de
sobrecarga, sobrecarga de operadores y sólo dispone de
un soporte rudimentario para la programación genérica.
Soporte nativo para programación multihilo y redes de
computadores.
7. Utilidad
Originalmente el Lenguaje C estuvo muy ligado al
sistema operativo UNIX que, en su mayor parte, está
escrito en C. Más adelante se comenzó a utilizar en
otros sistemas operativos para programar editores,
compiladores, etc. Aunque se le conoce como un
lenguaje de programación de sistemas, no se adapta mal
al resto de aplicaciones. De hecho, hoy en día un alto
porcentaje de software para ordenadores personales
está escrito en Lenguaje C. Por ejemplo, el sistema
operativo MS-DOS.
8. Ejemplo de la vida real
Usado en aplicaciones científicas (para experimentos
informáticos, físicos, químicos, matemáticos, entre otros,
parte de ellos conocidos como modelos y simuladores),
industriales (industria robótica, cibernética, sistemas de
información y base de datos para la industria petrolera y
petroquímica. Predominan también todo lo que se refiere
a simulación de máquinas de manufactura), simulaciones
de vuelo (es la más delicada, ya que se tienen que usar
demasiados recursos tanto de hardware como de
software para desarrollar aplicaciones que permitan
simular el vuelo real de una aeronave. Se aplica por
tanto, en diversas áreas desconocidas por gran parte de
los usuarios noveles.
10. Reflexión
Lenguaje c es la base de muchos programas que
actualmente son fundamentales para los procesos
informáticos e industriales que mueven a la sociedad
e impone tendencia.
Gracias a el contamos con sistemas operativos que
nos facilitan nuestras tareas diarias y es la base de
otros lenguajes de programación con beneficios
para nuestra humanidad. En la medicina, educación,
animación entre otros.