Para empezar a revisar las características fundamentales de un programa escrito en C++ utilizaremos el ejemplo universal por definición, el programa “Hola mundo“
// hola.cpp // Primer programa para ilustrar un programa escrito en C++ // Despliega una cadena de texto en pantalla // Por https://about.me/carlosgbr // Versión 1 // Compilado en https://www.onlinegdb.com/ #include <iostream> using namespace std; int main() { cout << "Hola mundo!"; return 0; }
Para poder ver “que hace” el programa que acabamos de escribir debemos realizar 2 tareas:
Recuerda estos pasos, pues es algo que siempre tendrás que hacer para ejecutar tus programas cada vez que hagas algún cambio en el código. Al proceso de ejecutar tu código también se le llama “Correr un programa” (Run)
Copia y pega el texto del programa 1, en el IDE que estés utilizando (aunque lo ideal es que lo escribas tú), en nuestro caso lo transcribimos al editor GDBOnline. Es importante que lo escribas tal cual se presenta.
Los programas escritos en C++ se guardan en archivos que constan de un nombre y de una extensión, por convención los archivos escritos en C++ reciben la extensión cpp (c plus plus)
Siempre es una buena idea de guardarlos antes de compliar los programas, puede ocurrir que el sistema de trabajo se cuelgue y deje de responder, ocasionando eventualmente la pérdida de hora de trabajo.
En nuestro caso, y en muchos entornor modernos, este paso se ejecuta “Ejecutando el código”, para poder ejecutar un programa, el entorno primero debe compilar el programa y depués (sino hay errores) lo ejecutará.
Para ejecutar tu programa en GDBOnline haz clic en el botón Run, en la parte superior. Puedes observar que en la ventana inferior (en donde hay publicidad) se te informarán constantemente los procesos que realizas, incluyendo acciones exitosas y las más importantes: las notificaciones de error.
Si no hay ningún error en el texto que copiaste en el editor, al pulsar el botón Run, el sistema Compilará tu código y la ventana de estado te debe mostrar un mensaje similar a de la siguiente imagen.
Si todo continúa sin problemas en la ventana inferior (la ventana de estado) verás el resultado de la ejecución del programa “Hola Mundo”, debes ver algo parecido a esto:
Es relevante revises el resultado del programa (la salida del programa, en términos de programación), podrás observar que se despliega la frase Hola Mundo!
Al final aparecen algunas indicaciones, una de ellas “exit code 0” significa que todo ocurrió como se esperaba y el programa terminó de forma correcta (código 0), Por último nos indica que para continuar debemos presionar Aceptar (Enter)
Si cometiste algún error, la ventana de estado te mostrará instrucciones ininteligibles, en este caso no te preocupes, basta que copies exactamente el programa como está escrito y re intentes hasta que obtengas el resultado deseado.
Te acabo de describir el proceso “ideal” es decir sin errores en el código, en el editor, incluso en este caso en Internet, cosa que no suele ser normal, lo “normal” cuando escribes programas durante tu aprendizaje es que aparezcan errores. La siguiente ventana te muestra un mensaje de error debido a un error en la captura del código.
No es relevante en este momento el significado del error, pero es conveniente que te habitúes a leerlos, con la práctica y experiencia te aclararán la causa (y ubicación) del error. Si revisas la ventana de estado verás que aparece la primera línea con texto en rojo indicando el número 12:24. Si revisas con detenimiento en el editor (arriba en la imagen) el texto en la línea 12 al final de la palabra, falta el punto y coma (;)
cout << “Hola munda!”
es incorrecto, debe ser
cout << “Hola munda!”;
Realiza el cambio de cout << “Hola munda!” a cout << “Hola munda!”; y pulsa el botón Run. El problema se debe solucionar y el programa se debe ejecutar sin problema.
Resulta conveniente que dediques tiempo a familiarizarte con el entorno de trabajo que utilizas, entre mejor conozcas tu entorno de desarrollo, más rápido será el desarrollo de las aplicaciones que emprendas. Y te permitirá además corregir errores de forma más efectiva y en menor tiempo.
En este momento no nos interesa el detalle de cada línea, en esta primera aproximación veremos como trabajan en conjunto todas las instrucciones, lo cual nos permitirá introducir términos y conceptos que debes utilizar con frecuencia. Este programa, aunque elemental, contiene muchos de los elementos que encontraremos en la mayoría de los programas escritos en C++
1 // hola.cpp
2 // Primer programa para ilustrar un programa escrito en c++
3 // Despliega una cadena de texto en pantalla
4 // Por http://about.me/carlosgbr
5 // Versión 1
6 // Compilado en https://www.onlinegdb.com/
7
8 #include <iostream>
9 using namespace std;
10 int main()
11 {
12 cout << “Hola mundo!”;
13 return 0;
14 }
A menudo nos veremos en la necesidad de poner algunas instrucciones o información que no son parte del programa, estas instrucciones o comentarios no son tomados en cuenta por el compilador y únicamente son útiles para el programador o por quien lee el programa.
Resulta conveniente comentar un programa por muchas razones, una de ellas es para documentar un programa, pues si bien es cierto que mientras desarrollamos una programa sabremos qué hace cada instrucción o conjunto de instrucciones, con el tiempo podemos olvidar porqué codificamos una instrucción de un modo y no de otro, comentando nuestro código será más fácil recordar que hace y porque lo hace de ese modo. Así mismo cuando otra persona lea nuestro código, fácilmente sabrá que hace un determinado fragmento de código a simple vista sin necesidad de revisar las instrucciones de forma detallada.
A primera vista (y para programas de este tamaño) puede parecer una pérdida de tiempo, sin embargo conforme los programas se hacen complejos, se vuelve un recurso invaluable, y si en las primeras etapas no te habitúas a hacerlo, difícilmente lo harás después.
Roberto C. González
En C++ una comentario siempre inicia con una doble barra, sin espacios, // . todo lo que se escriba después de cada // será ignorado por el compilador, la doble barra se debe escribir por cada línea de comentarios que se incluya.
Los espacios también son ignorados por el compilador, y únicamente se utilizan para facilitar la lectura y mantenimiento de un programa.
El programa igual se pudo escribir de la siguiente manera y funcionaría igual de bien que el código mostrado inicialmente (haz la prueba).
int main() { cout << "Hello World" << endl; return 0; }
Sin embargo es más fácil entender
9 int main() 10 { 11 cout << "Hola mundo!"; 12 return 0; 14 }
Siempre es buena idea utilizar los espacios y tabuladores necesarios para que nuestro código sea más legible (más fácil de leer).
Esta sección es lo que llamamos “Invocación (Llamado) de librerías” en esta sección indicaremos si nuestro programa requiere el uso de alguna librería en particular y se definirán con la palabra reservada
#include<librería>
seguida por el nombre del recurso (librería) utilizado encerrado en corchetes triangulares. Nos permite utilizar objetos para la entrada y salida de datos. Posteriormente profundizaremos en el uso de librerías, en este momento solo es relevante indicar el significado de que se declaren en nuestro programa.
En este momento solo indicaremos que usando este identificador nos permite usar la instrucción cout en nuestro programa en el formato
cout
y no de la forma
std::cout
Aunque para programas grandes se desaconseja su uso, para fines didácticos ofrece más beneficios que inconvenientes, así que lo usaré, al menos en la parte básica de este curso.
Todo en C++ en esencia es una función (o una clase). Una función es un objeto** que puede devolver (o no) un valor y puede (o no) recibir algunos valores. Dentro de la función se realizarán operaciones y devolverán un resultado. Las funciones pueden ser llamadas (invocadas) o pueden invocar (llamar) a otras funciones. Por el momento no te preocupes sino entiendes nada.
Sin embargo hay una función especial que no puede ser invocada (hay algunas excepciones pero son casos especiales y avanzados) y que determina el punto de entrada (inicio) y de fin de un programa, es la función main()
int main
indica que la función main devuelve un valor entero al terminar su ejecución.
main()
indica que main no recibe ningún valor (o parámetros en términos de programación)
Posteriormente veremos que main se puede definir con diferentes parámetros de entrada, en gran medida esto depende del compilador utilizado.
En C++ hay un punto de inicio y de fin, ese punto es la función main(), esto es lo único relevante a tener en cuenta en esta etapa..
Con un corchete de apertura se indica el inicio de una función (main en este caso), todo lo que se encuentra entre { y } se considera una sola instrucción, una forma de interpretar estos corchetes es semejante a la interpretación que se les da a los paréntesis en una ecuación algebraica que permiten agrupar lógicamente términos.
En síntesis ésta instrucción despliega la palabra “Hola mundo” (sin las comillas) en nuestro dispositivo predeterminado de salida. Normalmente el monitor.
Indica que nuestro programa devuelve un “0” como valor al terminar su ejecución. Éste valor puede ser utilizado por el sistema operativo o por otra aplicación o proceso residente en memoria. Normalmente un “0” indica que el programa se termina sin ninguna advertencia.
El corchete de cierre indica el final de la función y en el caso de la función main() en final del programa.
Es importante que tengas presente que el uso de minúsculas y mayúsculas es muy importante en C++, posteriormente veremos esto en detalle, por lo pronto tenlo en cuenta.
Termino esta sección mencionando que tantas explicaciones al código serán menos conforme avancemos en este material.
Nota Importante:
** Algunos puristas se pueden molestar, con esta afirmación “…una función es un objeto…”, por que lo ven a la luz de C o lo que se denomina programación estructurada. Históricamente un función en muchos lenguajes de programación, incluyendo C estándar, es un contenedor genérico de código, sin embargo en C++ todo es un objeto, incluyendo las funciones.
Quienes debaten que esto es incorrecto es porque mezclan C con C++, no son lo mismo. Este es un curso de C++ por tanto me apego a la afirmación de que en C++ las funciones son objetos. Si les cuesta trabajo asimilar esto, deben considerar que lenguajes “puros” de POO también definen el uso de funciones y además utilizan el concepto de clase. Como ocurre con Java por ejemplo, en donde el uso de las funciones es similar al que se da en C++ y C y las clases las identifican asociadas a los objetos, sin embargo ambos son objetos con diferentes propiedades. Igual ocurre con C++
Primer programa en C++ by Roberto C. González is licensed under a Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional License.
El comando dnsenum es una herramienta de línea de comandos para realizar enumeración de DNS…
En esta entrada te presento 24 de las listas negras más comunes que los servidores…
ZoomIt es una herramienta de anotación y zoom de pantalla para presentaciones técnicas que incluyen…
WinObj es el visor de espacios de nombres de Object Manager definitivo. Es la primera…
Whois realiza el registro de registro para el nombre de dominio o la dirección IP…
VolumeID – Esta utilidad, le permite cambiar los identificadores de los discos FAT y NTFS…