Я понимаю, что мы присваиваем беззнаковое длинное значение, поскольку оно содержит то же количество бит, что и число с плавающей запятой. Но что именно означает i?
Моя лучшая интерпретация заключается в том, что мы пытаемся привести двойное число к unsigned long long int, потому что у них есть одинаковое количество бит. И, похоже, лучший способ сделать это — разыменовать установленный нами указатель?
void printDouble(double d) {
unsigned long long int i = *(unsigned long long int *)&d;
for (int j = 63; j >= 0; j--) {
std::cout > j) & 1);
if (j == 63) std::cout
Подробнее здесь: https://stackoverflow.com/questions/641 ... esentation
Преобразуйте число с плавающей точкой/двойное значение в его представление IEEE754. ⇐ C++
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как преобразовать число с плавающей запятой в его шестнадцатеричную строку IEEE754 в PHP?
Anonymous » » в форуме Php - 0 Ответы
- 36 Просмотры
-
Последнее сообщение Anonymous
-