![]() |
![]() |
8.11) Punteros y estructuras. |
Podemos especificar igualmente una variable
puntero que apunta a una estructura. La utilización de dichas variables
se emplea frecuentemente cuando es necesario pasar la estructura
por referencia a una función o cuando se quiere hacer una reserva
dinámica de memoria para una estructura en un determinado momento
de la ejecución del programa.
El operador que se emplea para acceder a los miembros de una
estructura a través de una variable puntero es el operador .
La utilización de dicho operador se realiza de acuerdo al siguiente
formato:
![]() |
![]() |
Mostramos gráficamente la reserva de memoria que se realiza cuando un puntero apunta a una estructura:
Ejemplo: Transferimos un puntero a estructura a una función dentro de la cual realizaremos la asignación de los valores a dicha estructura, y posteriormente, sacaremos dichos valores por pantalla desde el main( ). IMPORTANTE: Fijarse como desde en la llamada a la función ajustar se pasa la dirección de la variable estructura (&cli) declarada en el main( ), y en la definición de la función ponemos un: registro *pt, para recibir dicha estructura, para que posteriormente los cambios que realicemos dentro de la función ajustar sean vistos fuera (es lo que llamamos un paso por referencia).