MEJOR SITIO PARA DESARROLLADORES WEB

C++ Tutorial

C++ HOGAR C++ Introducción C++ Empezar C++ Sintaxis C++ Producción C++ Comentarios C++ Variables C++ Entrada de usuario C++ Tipos de datos C++ Operadores C++ Cadenas C++ Matemáticas C++ Booleanos C++ Condiciones C++ Switch C++ While Bucle C++ For Bucle C++ Break/Continue C++ Matrices C++ Estructuras C++ Enumeraciones C++ Referencias C++ Consejos

C++ Funciones

C++ Funciones C++ Parámetros de función C++ Sobrecarga de funciones C++ Alcance C++ Recursión

C++ Clases

C++ POO C++ Clases/Objetos C++ Métodos de clase C++ Constructores C++ Especificadores de acceso C++ Encapsulación C++ Herencia C++ Polimorfismo C++ Archivos C++ Excepciones C++ Fecha

C++ Cómo

Suma dos números Números al azar

C++ Referencia

C++ Referencia C++ Palabras clave C++ <iostream> C++ <fstream> C++ <cmath> C++ <string> C++ <cstring> C++ <ctime>

C++ Ejemplos

C++ Ejemplos C++ Compilador C++ Ejercicios C++ Prueba C++ Certificado

Lenguaje C++. W3Schools lecciones en español

Ua En De

C++ Desreferencia


Obtener dirección y valor de la memoria

En el ejemplo de la página anterior, usamos la variable de puntero para obtener la dirección de memoria de una variable (usada junto con el & operador de referencia). Sin embargo, también puede utilizar el puntero para obtener el valor de la variable, utilizando el operador * (el operador desreferencia):

Ejemplo

string food = "Pizza";  // Declaración de variables
string* ptr = &food;    // Declaración de puntero

// Referencia: genere la dirección de memoria de food con el puntero (0x6dfed4)
cout << ptr << "\n";

// Desreferencia: genera el valor de food con el puntero (Pizza)
cout << *ptr << "\n";
Inténtalo tú mismo »

Tenga en cuenta que el signo * puede resultar confuso aquí, ya que hace dos cosas diferentes en nuestro código:

  • Cuando se usa en la declaración (string* ptr), crea una variable de puntero.
  • Cuando no se utiliza en la declaración, actúa como un operador de desreferencia.


Comentarios