Как преобразовать UINT64 в double ?
Хотелось бы узнать!
rpg - карту и поищу свиток живой смерти !Как
найду - вернусь и всех оживлю!
Шутка!!!
P.S.: похоже активность форума упала!
Цитата:
Originally posted by _anton
Хотелось бы узнать!
Хотелось бы узнать!
а просто кастинг не работает?
что-то типа:
double d;
UINT64 myu;
d=(double)(myu);
Цитата:
Originally posted by xelos
а просто кастинг не работает?
что-то типа:
double d;
UINT64 myu;
d=(double)(myu);
а просто кастинг не работает?
что-то типа:
double d;
UINT64 myu;
d=(double)(myu);
Нет!
error C2520: conversion from unsigned __int64 to double not implemented, use signed __int64
На gamedev мне предложили такой вариант:
unsigned __int64 i = 0x80000AB000000000;//Для теста
double d = ((double)(signed __int64)(i >> 63)) * ((double)0x7FFFFFFFFFFFFFFF) +
(double)(signed __int64)(i << 1 >> 1) + 1.0f;
Нет уверенности на счёт +1.0f