Ejercicio de Puntero a Void
Realizar un programa que tenga como datos iniciales :
- un tipo de dato entero llamado a con valor = 1
- un puntero a entero llamado p
- un puntero a void llamado px
- un tipo de dato double llamado x con valor = 2.4
Que debe hacer?
- Debe asignar le p la direccion de a para que apunte a lo mismo y luego mostrar el contenido de p.
- Debe castear la dirección de x para poder asignárselo al tipo de dato p y luego mostrar el contenido de p.
- Debe asignar al puntero a void px, la dirección de a.
- Debe crear un puntero entero llamado pa y luego asignarle px ( casteandolo ) y luego mostrar el contenido de pa.
- Al puntero a void px debe asignarle la dirección de x y luego crear un puntero pb para asignarle lo que apunta px ( casteándolo ) para finalmente mostrar el contenido de pb.
int main() { int a=1,*p; void *px; double x=2.4; p=&a; //válido: puntero y variable son del mismo tipo printf("Output 1 : %d\n", *p); //p=&x; MAL p=(int *)&x; //válido printf("Output 2: %d\n", *p); px=&a; int *pa = (int *)px; printf("Output 3: %d\n",*pa); px=&x; double *pb = (double *)px; printf( "Output 4: %lf\n", *pb); return 0; }