Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa Próxima revisión Ambos lados, revisión siguiente | ||
curso-cpp:hola-mundo [2016/09/23 17:43] santo |
curso-cpp:hola-mundo [2016/09/23 17:54] santo [Análisis del programa Hola Mundo] |
||
---|---|---|---|
Línea 7: | Línea 7: | ||
A modo de ejemplo, veamos un primer programa de ejemplo que llamaremos "HolaMundo". En Geany, crear un archivo nuevo llamado "HolaMundo.cpp" (Es importante que todos nuestros archivos de C++ utilicen la extensión ".cpp", que es la extensión de C++ más común. Si no utilizamos una extensión .cpp, Geany no entenderá que el archivo en cuestión está escrito en el lenguaje C++, y no lo compilará correctamente. Esto es porque Geany permite utilizar también otros lenguajes). | A modo de ejemplo, veamos un primer programa de ejemplo que llamaremos "HolaMundo". En Geany, crear un archivo nuevo llamado "HolaMundo.cpp" (Es importante que todos nuestros archivos de C++ utilicen la extensión ".cpp", que es la extensión de C++ más común. Si no utilizamos una extensión .cpp, Geany no entenderá que el archivo en cuestión está escrito en el lenguaje C++, y no lo compilará correctamente. Esto es porque Geany permite utilizar también otros lenguajes). | ||
- | Una vez creado este archivo, copiar (o tipear) el siguiente texto como contenido del mismo. Este texto es un **programa** escrito en el lenguaje de programación C++. | + | Una vez creado este archivo, copiar (o tipear) el siguiente texto como contenido del mismo. Este texto es un **programa** escrito en el lenguaje de programación C++. Más adelante estudiaremos bien qué significa cada parte del programa. |
<code> | <code> | ||
Línea 86: | Línea 86: | ||
* Olvidarse de **usar F9 para compilar el programa**, y en cambio usar directamente F5 para ejecutarlo. Si hacemos esto, Geany ejecutará la última versión que hayamos compilado, que puede no ser igual a la que tenemos a la vista y así generarnos confusión. Si nunca hemos compilado nada, se verá un mensaje de error al ejecutar. | * Olvidarse de **usar F9 para compilar el programa**, y en cambio usar directamente F5 para ejecutarlo. Si hacemos esto, Geany ejecutará la última versión que hayamos compilado, que puede no ser igual a la que tenemos a la vista y así generarnos confusión. Si nunca hemos compilado nada, se verá un mensaje de error al ejecutar. | ||
* Usar F9 para compilar el programa, y luego usar F5 para ejecutar el programa, **pero el programa no compiló exitosamente**. Si hacemos eso, Geany ejecutará la última versión que compiló exitosamente. Como esa no es la que tenemos escrita en el archivo (que es la que no ha compilado exitosamente), nuevamente esto puede causarnos confusión. | * Usar F9 para compilar el programa, y luego usar F5 para ejecutar el programa, **pero el programa no compiló exitosamente**. Si hacemos eso, Geany ejecutará la última versión que compiló exitosamente. Como esa no es la que tenemos escrita en el archivo (que es la que no ha compilado exitosamente), nuevamente esto puede causarnos confusión. | ||
+ | |||
+ | ===== Análisis del programa Hola Mundo ===== | ||
+ | |||
+ | Entendamos ahora el contenido del programa, línea por línea. Para algunas de las líneas, no necesitaremos entender bien a fondo los motivos por los cuáles son necesarias, y en realidad lo que haremos en la práctica será copiarlas siempre igual en todos nuestros programas. De cualquier manera, comentamos a continuación todo el programa, para que podamos hacernos al menos una idea de qué hace cada cosa. | ||
+ | |||
+ | <code> | ||
+ | #include <iostream> | ||
+ | |||
+ | using namespace std; | ||
+ | |||
+ | int main() | ||
+ | { | ||
+ | cout << "Hola mundo!" << endl; | ||
+ | return 0; | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | La primera línea, ''#include <iostream>'', es una directiva ''#include''. Estas directivas se utilizan para indicarle al compilador que vamos a querer **utilizar** partes de una biblioteca estándar existente. Se le llama biblioteca a un conjunto de elementos que ya están programados, y que podemos entonces utilizar en nuestro programa ahorrándonos así la necesidad de programarlos nosotros. En este caso particular, la línea indica que queremos utilizar la biblioteca iostream. Al hacerlo, a continuación tendremos disponibles todos los elementos de la biblioteca iostream. En nuestro programa en particular, los elementos de esta biblioteca que utilizaremos más adelante serán "cout" y "endl". Se puede comprobar que si quitamos esta línea del programa, el compilador generará un error en la línea que contiene a "cout" y "endl", ya que al no haber incluido la biblioteca no podemos usar estos elementos. | ||
+ | |||
+ | La línea ''using namespace std;'' la utilizaremos textualmente en todos nuestros programas. Los elementos de las bibliotecas estándar de C++ están todos contenidos en lo que se llama un namespace, en concreto en el namespace std (Del inglés, "standard"). Si no incluyéramos esta línea, tendríamos que poner ''std::'' delante de cualquier elemento de las bibliotecas estándar, lo cual nos resulta incómodo. Con esta línea indicamos que queremos usar todas las cosas de std "directamente", sin ponerles ''std::'' delante. | ||
+ | Se puede comprobar por ejemplo, que si |