![Estructura de un programa en C++](http://www.cplusplus.es/wp-content/uploads/2021/02/estructura-programa-c.png)
Los programas de C++ tienen una estructura básica muy definida que al novato le puede parecer demasiado complicada o incluso arcaica. Como ya vimos en la introducción, C++ es un lenguaje compilado. Vamos a ver que la estructura de un programa en C++, a nivel básico, consta de dos partes principales.
Estructura básica
Cada programa de C++ consta de dos partes básicas: las directivas de preprocesador y la función principal, o main(). Mira este programa de ejemplo:
#include <iostream> int main() { std::cout << "Hola, mundo!"; return 0; }
Directivas de preprocesador
La primera línea contiene el símbolo #, o hash, como primer caracter. Esto significa que es una directiva de preprocesador.
Tras el símbolo del hash viene la palabra include. Hay varias directivas de preprocesador disponibles en C++, pero include es la que veremos más a menudo.
Lo que hace include es indicar al compilador que queremos incluir o añadir declaraciones de la librería referenciada. Aquí estamos añadiendo las declaraciones de la librería iostream.
Los símbolos de mayor y menor (de aquí en adelante brackets) indican de qué forma se va a localizar esta librería. En este caso al ir entre brackets se va a tratar de buscar en el directorio de la librería estándar, donde se encuentran el resto de librerías.
También podemos usar comillas:
#include "main.hpp"
En este caso el compilador busca esta librería en el directorio actual y si no la encuentra busca en el directorio en el que están las librerías estándar.
Más adelante veremos por qué es muy importante esta diferenciación.
Función principal
El siguiente bloque es la sección principal del programa.
int main() { std::cout << "Hola, mundo!"; return 0; }
La función principal de los programas de C++, o main(), acostumbra a devolver un int. Por eso justo antes de la declaración del nombre de la función añadimos el tipo que vamos a retornar, en este caso int. Retornamos 0 al finalizar la ejecución cuando queremos indicar que no hay errores.
El propósito del programa no es más que el de imprimir la línea «Hola, mundo!» a través de la consola, que se encuentra conectada al búfer de salida. No te preocupes si no entiendes muy bien qué es un búfer de salida, de momento basta con saber que es posible mandar datos a diferentes fuentes tales como la terminal o archivos de diversa índole.
En el ejemplo, tenemos la cadena «Hola, mundo!», sabemos que es una cadena por estar entre comillas dobles. Utilizamos el símbolo ‘<<‘ para indicar que queremos redirigir dicha cadena a la salida std::cout. Como ya dijimos, esta salida suele estar conectada a la consola, por lo que veremos el texto escrito en nuestra pantalla.