¿Qué son C y C++?

C es un lenguaje de programación de ordenadores, de propósito general. Su uso está muy extendido, y existen compiladores para muchos sistemas operativos.

C++ (C plus plus o C más más) es una evolución del lenguaje C, que soporta la Programación Orientada a Objetos.


Cursos de C y C++

Cursos de C:
Cursos de C++:
Otros cursos relacionados con C

Compiladores de C y C++

Para Windows, C y C++:
  • La versión "Express" de Visual C++ 2010 se puede descargar libremente desde la página Web de Microsoft, en www.microsoft.com/express/downloads, aunque hay que registrarla al cabo de un mes.
  • Si quieres algo más ligero, que neceiste un ordenador menos potente, MinGW es un compilador de C y C++ basado en el de GNU (GCC), adaptado para Windows. Se puede descargar de www.mingw.org. En esta página puede llegar a ser complicado encontrar lo que se debe descargar, pero una alternativa es descargar un entorno que lo incorpore listo para usar, como estos tres:
    • CodeLite es un entorno de desarrollo para Windows (y otros sistemas operativos), apoyado en el compilador de C y C++ MinGW, que se actualiza continuamente. La última versión es la 2.10.0.4778, de abril de 2011. La descarga es un fichero de 24 Mb que incluye el compilador MinGW, o bien uno de 7.9 Mb que contiene sólo el entorno.
    • CodeBlocks es otro entorno de desarrollo para Windows, que tambi én se puede descargar por sí sólo (un fichero de unos 10 Mb) o con el compilador MinGW en un paquete listo para empezar a trabajar (un fichero de unos 20 Mb). La última versión estable es la 8.02, del 28 de febrero de 2008. Se sigue mejorando y se lanzan con frecuencia nuevas versiones con ligeras correcciones ("nightly builds "). Tiene más detalles (en inglés) en su foro . Si prefieres una descarga local, aquí tienes la versión 1.0rc2 (13.5 Mb) lista para descargar.
    • Dev-C++ es un entorno de desarrollo para Windows, creado por   Bloodshed, que se puede descargar solo o con el compilador MinGW (GCC 3.4.2), en un paquete listo para empezar a trabajar. La ú ltima versión es la 4.9.9.2, de febrero de 2005.
    • Otro entorno es MinGW Developer Studio. Su última versión es la 2.05, de abril de 2005 (con GCC 3.4.2). Recientemente, esta página fallaba. Por si sigue ocurriendo, aquí tienes una descarga local (23 Mb).
  • Watcom C++ ha sido mucho tiempo uno de los compiladores comerciales más extendido. La mayoría de los juegos comerciales desarrollados entre 1993 y 1995 se crearon con él. La lista incluye joyas como Doom y Duke Nukem 3D. Ahora se ha convertido en "Open Source". Se puede descargar la documentación y  el compilador (versión 1.9 disponible desde junio de 2010), en www.openwatcom.com
  • Borland C++ 5.5 también tiene una versión de libre distribución (que no incluye entorno de desarrollo, s ólo las utilidades de línea de comandos) y se puede descargar desde la página Web de Borland. Se trata de una herramienta de agosto de 2000. También se pueden consultar unas instrucciones básicas de uso (en inglés) en   community.borland.com/article/0,1410,20997,00.html
  • Digital Mars es un compilador de C y C++ para Dos y Windows, de libre distribuci ón, creado por Walter Bright (autor de Symantec C++), que no incluye entorno de desarrollo (excepto si se "compra el CD"). Versión 8.52 disponible desde abril de 2010.
  • LCC-Win32. Un compilador de C de libre distribución (gratis) para Windows, de 3.2 Mb de tamaño.
  • Cygwin no es sólo un compilador, sino la adaptación a Windows de toda una serie de herramientas Unix.
Para Dos
  • Turbo C++ y Borland C++ son productos de Borland, hoy descatalogados, de modo que sera dificil adquirirlos en tiendas. La versión actual recibe el nombre de " C++ Builder", y es un compilador visual para Windows. La informacion sobre los productos de desarrollo creados por Borland está en la direccion www.borland.es/products.
  • Turbo C 2.01 ahora es de libre distribución y se puede descargar desde la página Web de Borland,
  • Turbo C++ 1.01 ahora es de libre distribución y se puede descargar desde la página Web de Borland.
  • DJGPP. Un buen compilador de C/C++ gratis de 32 bits para MsDos (y Windows modo texto), basado en el compilador de GNU, y adaptado por DJ Delorie. Puedes leer algo más sobre él en mi Blog. Desde allí también podrás descargar una versión preinstalada, lista para usar.
  • PCC 2.1. Un compilador de C de libre distribución (shareware) y de peque ño tamaño (unos 175 K, descarga local).

Para Linux:
  • El compilador GCC debería estar disponible en casi cualquier distribución de Linux.
  • Si quieres un entorno de desarrollo, KDevelop es parte del escritorio KDE, y Anjuta es un entorno para Gnome, que tiene su p ágina oficial en anjuta.sourceforge.net. Un entorno alternativo, más sencillo y adecuado para programas de pequeño tamaño es Geany. Puedes leer algún comentario sobre las diferencias de las versiones actuales de Anjuta y Geany en mi Blog.

Librerías para programación visual


Se tiende cada vez más a que los programas que se realizan para otros usuarios tengan interfaces gráficas (típicamente basadas en ventanas), no en modo texto. Por eso, existen muchas librerías de funciones que permiten crear aplicaciones de este tipo. Algunas de ellas permiten existen incluso en versiones para diversos sistemas operativos, como Windows, Linux y MacOs X, lo que permite crear con facilidad programas portables. También es frecuente actualmente que incluyan un editor visual que nos ayude a crear la parte visible de la aplicación sin necesidad de teclear nada.

Algunas de las librerías más reconocidas de este tipo son:
  • QT, de Trolltech, que tiene versiones comerciales pero también una versión Open Source. Incluye un editor visual, QT Designer.
  • Gtkmm (basada en C++) y Gtk+ (para lenguaje C), una libreria desarrollada inicialmente para ser utilizada en el programa de manipulación de imágenes "The Gimp". Su editor visual es Glade.
  • Una tercera alternativa interesante es WxWidgets, usada en aplicaciones como el editor de sonido Audacity o como SciTech Display Doctor.  WxDev es una ampliación del entorno Dev-C++ pensada para desarrollar aplicaciones con WxWidgets, que incluye la librería, el compilador, el editor y un diseñador de formularios.

Fuentes en C y C++

Otros enlaces sobre C y C++

  • Lista de alguno de los cambios que supone el estándar C99, de 1999 y el estándar C11, de finales de 2011 (y también otro documento alternativo)
  • Página de Bruce Eckel, creador de libros como "Thinking in C++" y "Thinking in Java", cuyas versiones electrónicas están disponibles, así como los ejemplos incluidos en los libros. También existe un "Thinking in C", en formato de de animación flash. Puedes encontrar todo ello en: http://www.bruceeckel.com
  • HelpPC es una referencia muy completa que incluye ayuda sobre hardware del Pc, las principales funciones del lenguaje C, ensamblador, interrupciones y órdenes de MsDos. Está comprimido en un fichero de 275 K de tamaño.
  • XNA es una serie de herramientas gratuitas de Microsoft, dise ñadas para permitir crear juegos para Pc y Xbox con una cierta facilidad. A mí no me gustó tanto como esperaba (puedes leer los motivos en mi blog), pero para quien tenga equipos potentes, puede ser interesante echarle un vistazo. Puedes ver más detalles en su página oficial, es msdn2.microsoft.com/es-es/xna (a fecha de escribir esta cita, todavía está sólo en inglés).