En este artículo, encontrará ejemplos relevantes que lo ayudarán a trabajar con punteros para acceder a los datos dentro de una estructura.
Una variable puntero se puede crear no sólo para los tipos nativos como ( int
, float
, double
etc.), pero también pueden ser creadas para los tipos definidos por el usuario, como la estructura.
Si no sabe qué son los punteros, visite punteros de C ++.
Así es como puede crear un puntero para estructuras:
#include using namespace std; struct temp ( int i; float f; ); int main() ( temp *ptr; return 0; )
Este programa crea un puntero ptr de estructura de tipo temp.
Ejemplo: punteros a la estructura
#include using namespace std; struct Distance ( int feet; float inch; ); int main() ( Distance *ptr, d; ptr = &d; cout <> (*ptr).feet; cout <> (*ptr).inch; cout << "Displaying information." << endl; cout << "Distance = " << (*ptr).feet << " feet " << (*ptr).inch << " inches"; return 0; )
Salida
Ingrese pies: 4 Ingrese pulgadas: 3.5 Visualización de información. Distancia = 4 pies 3,5 pulgadas
En este programa, se define una variable puntero ptr y una variable normal d de estructura de tipo Distancia.
La dirección de la variable d se almacena en la variable puntero, es decir, ptr apunta a la variable d. Luego, se accede a la función miembro de la variable d usando un puntero.
Nota: Dado que el puntero ptr apunta a la variable d en este programa, (*ptr).inch
y d.inch
es exactamente la misma celda. Del mismo modo, (*ptr).feet
y d.feet
es exactamente la misma celda.
La sintaxis para acceder a la función miembro usando un puntero es fea y hay una notación alternativa -> que es más común.
ptr-> pies es igual que (* ptr) .feet ptr-> pulgada es igual que (* ptr) .inch