Ver Mensaje Individual
  #4 (permalink)  
Antiguo 09/01/2009, 11:16
baron_rojo
 
Fecha de Ingreso: enero-2009
Mensajes: 2
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: almacenar un double en un array de unsigned char

Hola,

El tamaño de double no debe ser tomado como constante, lo mejor es utilizar sizeof para saber el tamaño del tipo de datos.
Por otro lado si te intereza un array de unsigned char deberías declararlo como tal

Te dejo este programa como referencia. Lee un double y despues lo copia a un array de unsigned char y lo imprime como double (ojo con los cast).

int main(void)
{
unsigned char array[sizeof (double)], *ptr;
double numero;
int i;

scanf("%lf",&numero);

/* guarda la dirección de numero en ptr */
ptr = (char *) №

for( i = 0 ; i < sizeof(double) ; ++i )
{
array[i] = ptr[i];
}

printf("%lf", * ((double *) ptr) );

return(0);
}

Saludos