, z double y/(float)100000.0 y/100000.0.
float x = 1028.25478;
long int y = 102825478;
double z = y/100000.0;
// output
x = 1028.254761 z = 1028.254780
FLT_EVAL_METHOD. .
#include <float.h>
#include <stdio.h>
printf("FLT_EVAL_METHOD %d\n", FLT_EVAL_METHOD);
cast... , , , , . , FLT_EVAL_METHOD.
-1 ;
0
;
1 ... float double
double, long double
... long double
;
2 ...
long double.
, , z float z = y/(float)100000.0; .
@Antti Haapala, , .