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);

}