Tengo una variable de tipo double
llamada x a la que le realizo un cast al tipo de dato int
. El problema es que durante la conversión se redondea el valor y quiero evitar eso.
La variable x antes de realizar el cast imprimo por pantalla y arroja 112.000000, pero luego al imprimir la otra variable arroja 111. No se porque este pasando esto.
En el código:
double x = operacion + aritmetica; // Operacion que resulta 112.000000
int cast = (int) x;
printf("%d", cast); // cast es 111
He probado con la funcion trunc
pero sigue comportandose igual.