Red de conocimientos sobre prescripción popular - Conocimiento de perdida de peso - ¿Cómo convertir int a float en lenguaje C? ¿Por qué ocurre el redondeo?
¿Cómo convertir int a float en lenguaje C? ¿Por qué ocurre el redondeo?
Normalmente, el punto flotante tiene 24 bits para representar dígitos significativos. Para los números enteros, después de 2^24, muchos números no se pueden representar con precisión, como 2^24+1.
Si conviertes int 2 24+1 en un float, solo puedes convertir al 2 24 más cercano.
Específicamente, al ejecutar el siguiente código, sabrás:
#contains? & ltstdio.h & gt
¿#Contiene? & ltmath.h & gt
int? principal(vacío)
{
int? ¿respuesta? =?pow(2,24)? +?1;
¿Flotante? b;
b? =?a;
printf("a?=?%d\n ",a);
printf("b?=?%lf\n ",b);
}