Lección 9 / 20

Fundamentos de los punteros

En esta lección conocerás los punteros, que es donde C++ se vuelve verdaderamente distinto de otros lenguajes.

Un puntero es una variable que guarda la dirección de memoria de otra. &variable obtiene la dirección, y *puntero accede al valor que hay en esa dirección. La declaración lleva asterisco: int *p = №.

El código de ejemplo cambia el valor de una variable a través de su dirección, y muestra el antes y el después. Fíjate en que la variable original cambia sin haberla tocado directamente.

Lo que cuesta al principio es distinguir los dos usos del asterisco: en la declaración significa «esto es un puntero», y al usarlo significa «dame el valor que hay ahí». Son cosas distintas escritas con el mismo símbolo.

El peligro real son los punteros que apuntan a memoria ya liberada o no inicializada. Por eso el C++ moderno prefiere std::unique_ptr y std::shared_ptr, que gestionan la liberación automáticamente.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar C++ directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

Espacio publicitario (banner)
Espacio publicitario (en el artículo)