doubleの演算って環境依存ですか?
それとも何か間違ってるのかな。

double a = 0.052;
double b = 1000;
int c = int(a * b); //VC=52 BC=51
a *= b;
int d = a; //両方52