да по сути это одно и то же - побитовое копирование
просто если сделать такой тест:
Код:
__int64 a = 10000000000;
double d = *(double*)&a;
std::cout << a << std::endl;
std::cout << d << std::endl;
то результат будет как раз такой которого я и боялся
Код:
10000000000
4.94066e-314
побитово они совпадают, но интерпретируются по разному