Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: fafafa01 en 26 Junio 2016, 08:25 am



Título: variable puntero a double vs variable double
Publicado por: fafafa01 en 26 Junio 2016, 08:25 am
Buenas he estado usando punteros a funciones y he notado que si al argumento de una función lo definimos como float y después cuando usamos la función le pasamos al argumento una variable double, y la imprimimos en la pantalla con printf anda perfecto y queda como double, pero si defino al argumento como un puntero a float y le pasamos un puntero a double no da un resultado coherente, ¿alguien sabe a que se debe esto?


Título: Re: variable puntero a double vs variable double
Publicado por: class_OpenGL en 26 Junio 2016, 08:49 am
Las variables de tipo float y tipo double se representan en memoria de forma diferente. Cuando pasas un double como float en una función, este se convierte automáticamente, pero cuando pasas un puntero a double como puntero a float, el contenido de la memoria no se reinterpreta y por lo tanto no ves ese resultado 'coherente'


Título: Re: variable puntero a double vs variable double
Publicado por: fafafa01 en 26 Junio 2016, 10:05 am
puede ser que le haya pasado algo a mi programa por  pasar un puntero a double como argumento cuando tendría que haber pasado un puntero a float.

el puntero a double apuntaba a memoria reservada con malloc.

me apareció un werning como mensaje pero probé igual.


Título: Re: variable puntero a double vs variable double
Publicado por: fafafa01 en 26 Junio 2016, 10:14 am
no dije nada, era un problema menor, saludos.