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; }
Ejecutando nuestro primer programa
Para poder ver «que hace» el programa que acabamos de escribir debemos realizar 2 tareas:
- Escribir (y guardar) el programa
- Compilar el código
- Ejecutar el código una vez compilado.
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)
Escribir el programa
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.
Guardar un programa escrito en C++
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.
Compilar el código
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)
Errores al compilar un programa
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.
Una última observación acerca de tu programa de trabajo
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.
Analizando el código del programa.
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 }
Líneas 1, 2, 3, 4, 5 y 6
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.
Línea 7
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).
Línea 8
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.
Línea 9
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.
Línea 10
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..
Líneas 11 y 15
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.
Línea 12
En síntesis ésta instrucción despliega la palabra “Hola mundo” (sin las comillas) en nuestro dispositivo predeterminado de salida. Normalmente el monitor.
- Cout es una función estándar para desplegar información en el dispositivo predeterminado de salida.
- “Hola mundo” Siempre que definamos una cadena de texto, deberemos encerrarla entre dobles comillas
- Toda instrucción en C++ termina en punto y coma, este punto y coma es parte de la sentencia.
Línea 13
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.
Línea 14
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++
Si tienes alguna duda que no se responde en este documento, por favor plantea tu pregunta para poder responderte. O escribe directamente a soporte@ehack.mx
Referencias
- Por Roberto C. González para Ethical Hack
Fuente Imágenes
- «Todas las imágenes de esta sección»: by Nala Systems
Tutorial de C++ by eHack
- Volver al índice de temas del Tutorial de C++
- *** Durante todo este tutorial se repetirá: Este es un curso orientado a gente que nunca ha programado, incluso a gente ajena a la informática. Por esta razón el desarrollo puede parecer lento en ciertas etapas. Prefiero ser claro paso a paso, que hacer «pasos mágicos» como suele ocurrir cuando se enseña programación. *** También es buena idea leas esta entrada si te preguntas «Por qué C++»
Código Fuente
- El código fuente de toda la serie lo puedes descargar en nuestro repositorio en github busca los programas con el nombre del encabezado de cada programa.
- Código de esta sección
Primer programa en C++, por Roberto C. González. Se distribuye bajo una Licencia Creative Commons Atribución-NoComercial-CompartirIgual 4.0 Internacional.
©2025, Ethical Hack, Todos los derechos reservados sobre el contenido propio.