C Lang
C es un lenguaje de programación (considerado como uno de lo más importantes en la actualidad) con el cual se desarrollan tanto aplicaciones como sistemas operativos.
Tenemos que viajar hasta 1972 para ver el nacimiento del lenguaje de programación C de la mano del científico informático estadounidense Dennis Ritchie (con la ayuda de Ken Thompson). Recibió el nombre de C simplemente por una cuestión alfabética, ya que sustituyó a su lenguaje predecesor, B. El desarrollo del lenguaje C toma protagonismo para la creación del sistema operativo UNIX.
Uno de los objetivos de diseño del lenguaje C es que solo sean necesarias unas pocas instrucciones en lenguaje máquina para traducir cada elemento del lenguaje. Además, por este motivo es relativamente sencillo hacer un compilador para C. Es muy posible escribir C a bajo nivel de abstracción; de hecho, C se usó como intermediario entre diferentes lenguajes.
Citando a Drew Devault en su post Rust is not a good C replacement y revisado por ThePrimeagen en su vídeo:
C is the most portable programming language. […] A new CPU architecture or operating system can barely be considered to exist until it has a C compiler. And once it does, it unlocks access to a vast repository of software written in C. Many other programming languages, such as Ruby and Python, are implemented in C and you get those for free too.
Características
- Potente y eficiente
- Lenguaje estructurado: se basa en estructuras para ordenar el codigo
- Programación de nivel medio
- Multiplataforma
- Objetivos generales. No es un lenguaje para una tarea específica, pudiendo programar tanto un sistema operativo (aunque se pensó para eso), una aplicación o un juego.
- Ofrece un control absoluto de todo lo que sucede en el ordenador con total libertad.
- Como inconvenientes, no es un lenguaje sencillo de aprender, que requiere una continua práctica y un serio seguimiento si queremos tener el control de los programas.
C++
De la Wikipedia:
C++ es un lenguaje de programación diseñado en 1979 por Bjarne Stroustrup. La intención de su creación fue extender al lenguaje de programación C mecanismos que permiten la manipulación de objetos. En ese sentido, desde el punto de vista de los lenguajes orientados a objetos, C++ es un lenguaje híbrido.
Posteriormente se añadieron facilidades de programación genérica, que se sumaron a los paradigmas de programación estructurada y programación orientada a objetos. Por esto se suele decir que el C++ es un lenguaje de programación multiparadigma.
Actualmente existe un estándar, denominado ISO C++, al que se han adherido la mayoría de los fabricantes de compiladores más modernos. Existen también algunos intérpretes, tales como ROOT. El nombre “C++” fue propuesto por Rick Mascitti en el año 1983, cuando el lenguaje fue utilizado por primera vez fuera de un laboratorio científico. Antes se había usado el nombre “C con clases”. En C++, la expresión “C++” significa “incremento de C” y se refiere a que C++ es una extensión de C.
Más características:
- C es un subconjunto de C++.
- Permite la Programación Orientada a Objetos (POO).
- Lenguaje muy didáctico, puedes aprender muchos otros lenguajes con gran facilidad.
- Es un lenguaje de alto nivel, aunque también es considerado de nivel medio por su facilidad de manejo de memoria.