lenguaje C | Puntero a Union : Aquí, vamos a aprender a crear puntero union, el cambio, y el acceso a los miembros union utilizando el puntero.
Puntero a Union
Puntero a union se pueden crear al igual que otros punteros a tipos de datos primitivos.
Considere el siguiente declaración union:
union number{
int a;
int b;
};
Aquí, a y b son los miembros de la serie union.
Union declaración de variables:
union number n;
Aquí, n es la variable de número.
Puntero a union declaración e inicialización:
union number *ptr = &n;
Aquí, ptr es el puntero a la union y se asigna a la dirección de la variable union n.
Acceso union miembro usando union a puntero:
Syntax:
pointer_name->member;
Example:
// to access members a and b using ptr
ptr->a;
ptr->b;
C programa para demostrar ejemplo de union a puntero
#include <stdio.h>
int main()
{
// union declaration
union number {
int a;
int b;
};
// union variable declaration
union number n = { 10 }; // a will be assigned with 10
// pointer to union
union number* ptr = &n;
printf("a = %dn", ptr->a);
// changing the value of a
ptr->a = 20;
printf("a = %dn", ptr->a);
// changing the value of b
ptr->b = 30;
printf("b = %dn", ptr->b);
return 0;
}
salida:
a = 10
a = 20
b = 30