Saltar al contenido
Diferencias.eu

Diferencias entre C y C++

En el 谩mbito de la programaci贸n es muy frecuente encontrarse con los lenguajes C y C++, ambos son los lenguajes de programaci贸n m谩s utilizados para programaci贸n de bajo nivel y sistemas embebidos es decir, sistemas que no corren en un ordenador sino en otro tipo de dispositivo, ya que, otros lenguajes como Java han quitado a C y a C++ la posici贸n dominante que ten铆an en la programaci贸n de alto nivel.

Por lo tanto, en este art铆culo se帽alaremos las diferencias espec铆ficas que existen entre estos dos lenguajes de programaci贸n, comenzando por sus definiciones y caracter铆sticas.

Lenguaje C

C es un lenguaje de programaci贸n desarrollado por Dennis Ritchie en 1970 y basado en el paradigma de programaci贸n estructurada. Este se presenta como un lenguaje de prop贸sito general que da al programador control total sobre sus programas, ya que, permite la programaci贸n de bajo nivel. Esto quiere decir que, permite controlar directamente funcionalidades como el acceso a la memoria y otros recursos de programaci贸n.

Al mismo tiempo, C proporciona estructuras de alto nivel que faciliten la programaci贸n de sistemas grandes. Este lenguaje comenz贸 a usarse en la escritura del sistema operativo Unix del que deriva Linux (Sistema Operativo que permite utilizar diversos programas como: editores de texto, juegos, navegadores de Internet, etc.).

En 1978, con la publicaci贸n de 鈥淭he C Programming Language鈥 de Brian Kernigham y Dennis Ritchie, el lenguaje de programaci贸n C alcanz贸 gran popularidad y se convirti贸 en el lenguaje de referencia para la comunidad inform谩tica.

Algunas de las caracter铆sticas definitorias de este lenguaje de programaci贸n son:

  • Los archivos de C se guardan con extensi贸n c, ejemplo practica.c.
  • Deben utilizarse 煤nicamente los operadores &&, || y !
  • Se utilizan las funciones printf y scanf para los flujos IO de entrada y salida.
  • No tiene soporte para la programaci贸n orientada a objetos.
  • Las bibliotecas en C terminan con .h (son headers) como por ejemplo math.h y time.h.

Lenguaje C++

C++ es un lenguaje de programaci贸n creado por Bjarne Stroustrup durante la primera mitad de la d茅cada de 1980, con el fin de dotar a C de mecanismos que permitieran usar el paradigma de programaci贸n orientada a objetos, ya que, el lenguaje C no ten铆a soporte para ello. Por ello, r谩pidamente logr贸 sustituirlo. Su nombre inicial era C with Classes pero posteriormente se agreg贸 el simbolismo (++) para representar que se refer铆a a C incrementado.

En principio, C++ era totalmente compatible con C, es decir, cualquier programa escrito en C era un programa v谩lido tambi茅n para C++, aunque no se daba el caso contrario. Esta opci贸n se dise帽贸 con el prop贸sito de permitir al programador mayor facilidad para la adopci贸n del nuevo lenguaje de programaci贸n orientada a objeto.

Algunas de las caracter铆sticas de C++ son las siguientes:

  • Los archivos de C++ se guardan con extensi贸n cpp (c plus plus), como por ejemplo practica.cpp.
  • Los conocidos operadores l贸gicos AND, OR y NOT pueden ser utilizados como palabras en el lenguaje C++.
  • Se utiliza cout y cin como flujo de entrada y salida.
  • Tiene soporte para la programaci贸n orientada a objetos.
  • Las bibliotecas en C++ son headers, pero por convenci贸n, se elimina la terminaci贸n 鈥.h鈥 y se agrega 鈥榗鈥 al principio como por ejemplo cmath y ctime.

En atenci贸n a lo se帽alado en las definiciones anteriores, se puede decir que, las principales diferencias entre C y C++ son:

  • Los archivos de C se guardan con extensi贸n 鈥揷- mientras que los archivos de C++ se guardan con extensi贸n 鈥揷pp- (c plus plus).
  • Los conocidos operadores l贸gicos AND, OR y NOT pueden ser utilizados como palabras en el lenguaje C++ o como operadores mientras que en C deben utilizarse 煤nicamente los operadores &&, || y !.
  • En C se utilizan las funciones printf y scanf para los flujos IO de entrada y salida mientras que en C++ se utiliza cout y cin como flujos de entrada y salida.
  • En el paradigma de programaci贸n orientada a objetos, se hace uso de Clases, donde el lenguaje C no tiene soporte para ello mientras que C++ si lo tiene.
  • Las bibliotecas en C terminan con h mientras que para C++ se elimina la terminaci贸n 鈥.h鈥 y se agrega 鈥榗鈥 al principio, como por ejemplo cmath.

驴Qu茅 te ha parecido el art铆culo?