1. Declaración de variables
Repasemos otra vez cómo crear variables. Para crear una variable, hay que escribir este comando: tipo nombre;.
Ejemplos:
| Comando | Explicación |
|---|---|
|
Se crea la variable s del tipo std::string. Esta variable puede almacenar texto. |
|
Se crea la variable x del tipo int. Esta variable puede contener números enteros. |
|
Se crean las variables a, b, c, d del tipo int. Estas variables pueden guardar números enteros. |
No puedes crear dos variables con el mismo nombre en un mismo bloque de código. En bloques diferentes sí es posible. Es como cajas que están en casas distintas. Más detalles sobre los bloques de código — en las siguientes lecciones.
También hay restricciones sobre el nombre de la variable. Por un lado, puede ser casi cualquier cosa; por otro — no puede contener espacios, ni símbolos como +, -, etc. Lo mejor es usar en el nombre de la variable solo letras latinas y cifras.
Y recuerda: en el lenguaje C++ importa qué letras escribes — si son mayúsculas o minúsculas. int a no es lo mismo que int A.
Por cierto, en C++ puedes crear una variable y asignarle un valor al mismo tiempo. Esto ahorra tiempo y líneas:
| Código compacto | Código largo, equivalente al de la izquierda |
|---|---|
|
|
|
|
|
|
|
|
|
|
Así es mucho más compacto y claro.
Ya que entendimos cómo crear variables, conozcamos los dos tipos más usados en C++. Son los tipos int (números enteros) y std::string (texto/cadenas).
2. Tipo int
En una variable del tipo int puedes guardar números enteros: 5, -10, 100500. Además, sobre el tipo int puedes realizar varias operaciones aritméticas: suma, resta, multiplicación, división y otras. Ejemplos:
int main() {
{
int x = 1; // x valdrá 1
int y = x * 2; // y valdrá 2
int z = 5 * y * y + 2 * y + 3; // z valdrá 20+4+3, valdrá 27
}
{
int a = 5; // a valdrá 5
int b = 1; // b valdrá 1
int c = (a - b) * (a + b); // c valdrá 4*6, valdrá 24
}
{
int a = 64; // a valdrá 64
int b = a / 8; // b valdrá 8
int c = b / 4; // c valdrá 2
int d = c * 3; // d valdrá 6
}
}
Si no faltaste a las clases de matemáticas, todo esto te debería resultar claro 🧐
Y si faltaste, aquí tienes la lista de operaciones permitidas:
- + — suma
- - — resta
- * — multiplicación
- / — división
- % — resto de la división
3. Tipo double
El tipo int guarda solo números enteros. ¿Y si necesitamos números con parte fraccionaria? Para eso existe el tipo double.
Almacena números reales:
double x = 3.14;
double y = -0.5;
double z = 2.0;
Particularidad del double
Los números del tipo double se almacenan en memoria de forma aproximada. A veces pueden aparecer efectos inesperados:
double x = 0.1 + 0.2; // 0.300000004
Puedes esperar exactamente 0.3, pero internamente se guarda un valor aproximado. Es normal. Así funciona la representación de números fraccionarios en el ordenador.
4. Tipo std::string
El tipo std::string permite almacenar cadenas de texto. Para especificar una cadena en C++ hay que escribir el texto entre comillas dobles.
| Código | Explicación |
|---|---|
|
s contendrá el texto Amigo |
|
s contendrá el texto 123 |
|
s contendrá el texto Bond 007 |
No parece complicado, ¿verdad? Si es así, aquí tienes otro dato interesante.
Las cadenas en C++ se pueden concatenar con el signo más — +. Ejemplo:
#include <string>
int main() {
std::string s1 = std::string("Amigo") + " the best"; // s contendrá Amigo the best
std::string s2 = ""; // s contendrá una cadena vacía — sin caracteres.
int x = 333;
std::string s3 = std::string("Amigo") + std::to_string(x); // s contendrá Amigo333
}
Fíjate en el último ejemplo: concatenamos una cadena y un número. Aquí también es simple: el número se convierte a cadena y luego se concatenan las dos cadenas. Al sumar cadenas y números siempre se obtiene una cadena.
5. Imprimir una variable en pantalla
Parece todo tan obvio y elemental. Entonces, ¿adivinas qué comando usamos para imprimir una variable en pantalla?
En realidad es sencillo. Para imprimir algo usamos std::cout, a donde pasamos lo que queremos mostrar. Para un salto de línea es conveniente añadir '\n'.
#include <iostream>
#include <string>
int main() {
std::cout << "Amigo\n"; // Amigo
std::cout << "Ami" << "go" << '\n'; // Amigo
std::string s1 = "Amigo";
std::cout << s1 << '\n'; // Amigo
std::string s2 = "Am";
std::cout << s2 << "igo" << '\n'; // Amigo
}
Espero que ahora esté un poco más claro. Para comprobar si lo entendiste bien, lo vamos a verificar. La práctica es el criterio de la verdad: solo practicando puedes comprobar si lo has entendido bien.
6. Operaciones de asignación abreviadas (+=, -=, *=, /=)
En C++ existe una forma conveniente de escribir operaciones del tipo:
x = x + 5;
Se puede escribir de forma más corta:
x += 5;
Esto se llama asignación abreviada.
Ejemplos:
int x = 10;
x += 5; // x = 15
x -= 3; // x = 12
x *= 2; // x = 24
x /= 4; // x = 6
Es decir:
x += a → x = x + a
x -= a → x = x - a
x *= a → x = x * a
x /= a → x = x / a
No es solo "belleza del código" — estas formas son más cortas, más claras y se usan constantemente.
Las operaciones abreviadas funcionan también con cadenas:
std::string s = "Hello";
s += " World"; // "Hello World"
En CodeGym estudias la versión más reciente de C++ (C++23), por eso tienes disponibles desde el principio todas las características molonas. ¡Disfruta! 😎
GO TO FULL VERSION