C++ Básicoc++estructurabásicosintaxis
Estructura de un Programa en C++
Aprende la estructura básica de un programa en C++ para programación competitiva
OOI Oaxaca9 de febrero de 20264 min read
Estructura básica
Todo programa en C++ sigue una estructura fundamental:
#include <iostream>
using namespace std;
int main() {
// Tu código aquí
return 0;
}
Analicemos cada parte:
Directivas de preprocesador
#include <iostream>
Las directivas #include importan bibliotecas. Las más comunes son:
| Biblioteca | Uso |
|---|---|
<iostream> | Entrada/salida (cin, cout) |
<cmath> | Funciones matemáticas |
<string> | Manejo de cadenas |
<vector> | Arreglos dinámicos |
<algorithm> | Algoritmos (sort, find) |
Para competencias, usamos el header que incluye todo:
#include <bits/stdc++.h>
Espacio de nombres
using namespace std;
Esto nos permite usar cout en lugar de std::cout.
Función main
int main() {
// Código
return 0;
}
intindica que devuelve un enteromain()es el punto de entrada del programareturn 0indica que el programa terminó correctamente
Template para competencias
Este es el template recomendado para programación competitiva:
#include <bits/stdc++.h>
using namespace std;
// Macros útiles
#define int long long
#define endl '\n'
#define pb push_back
#define all(x) (x).begin(), (x).end()
void solve() {
// Tu solución aquí
}
signed main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int t = 1;
// cin >> t; // Descomenta si hay múltiples casos
while (t--) {
solve();
}
return 0;
}
Explicación del template
Optimización de entrada/salida
ios_base::sync_with_stdio(false);
cin.tie(NULL);
Estas líneas aceleran significativamente la lectura y escritura de datos.
Macro para evitar overflow
#define int long long
Redefine int como long long para evitar errores de overflow.
Usar signed main
signed main()
Necesario cuando usamos #define int long long.
Comentarios
// Esto es un comentario de una línea
/*
Esto es un comentario
de múltiples líneas
*/
Ejemplo completo: Hola Mundo
#include <iostream>
using namespace std;
int main() {
cout << "¡Hola, Mundo!" << endl;
return 0;
}
Salida:
¡Hola, Mundo!
Ejemplo: Sumar dos números
#include <iostream>
using namespace std;
int main() {
int a, b;
cin >> a >> b;
cout << a + b << endl;
return 0;
}
Entrada:
5 3
Salida:
8
Errores comunes
1. Olvidar el punto y coma
// ❌ Error
cout << "Hola"
// ✅ Correcto
cout << "Hola";
2. Usar comillas incorrectas
// ❌ Error (comillas tipográficas)
cout << "Hola";
// ✅ Correcto (comillas rectas)
cout << "Hola";
3. Case sensitivity
// ❌ Error (C++ es sensible a mayúsculas)
Int main()
COUT << "Hola";
// ✅ Correcto
int main()
cout << "Hola";
4. Olvidar incluir bibliotecas
// ❌ Error (no se incluyó iostream)
int main() {
cout << "Hola";
}
// ✅ Correcto
#include <iostream>
using namespace std;
int main() {
cout << "Hola";
}
Compilación y ejecución
En terminal (Linux/Mac)
# Compilar
g++ -o programa programa.cpp
# Ejecutar
./programa
Con flags de competencia
g++ -std=c++17 -O2 -Wall programa.cpp -o programa
| Flag | Significado |
|---|---|
-std=c++17 | Usar estándar C++17 |
-O2 | Optimización nivel 2 |
-Wall | Mostrar todas las advertencias |
Ejercicio de práctica
Escribe un programa que lea tu nombre y lo salude:
Entrada:
Juan
Salida:
¡Hola, Juan!
Ver solución
#include <iostream>
#include <string>
using namespace std;
int main() {
string nombre;
cin >> nombre;
cout << "¡Hola, " << nombre << "!" << endl;
return 0;
}
Siguiente paso
Aprende sobre Tipos de Datos y Variables para almacenar información en tus programas.
