Programación General > C/C++

 Casteos "raros" en C

(1/1)

Leber:
Hola que tal.

Estaba haciendo algo cuando me tope con la necesidad de hacer un casteo de tipo void* a int. Como no lo tenia muy claro me puse a buscar un poco por internet y me encontré una web bastante maja donde lo explicaban.

En la web había un ejemplo más o menos como este:



--- Código: C ---#include <stdio.h> void func(void *point){    int ret;         ret = *(int *)point;        printf("%dn", ret );} int main(void){    int ret_point = 5;     func(&ret_point);    return 0;}  
El punto es que no entiendo muy bien esto:

--- Código: C ---ret = *(int *)point; 

(int *)point <- Esto lo entiendo, hace un casteo a un puntero de tipo int. Pero luego esto *(int *)point ya no lo entiendo.
Alguien me lo podría explicar un poco?

Gracias de antemano

m0skit0:
El asterisco de más es para recoger el valor al que apunta el puntero. Esto viene en cualquier libro de C  :P

Leber:

--- Cita de: "m0skit0" ---El asterisco de más es para recoger el valor al que apunta el puntero. Esto viene en cualquier libro de C  :P
--- Fin de la cita ---

Si, eso si que lo se, simplemente me lie con el ( tipo *).

saludos  ^_^

Navegación

[0] Índice de Mensajes

Ir a la versión completa