Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
mclaren2000
0 / 0 / 0
Регистрация: 27.08.2008
Сообщений: 6
#1

Как из 4-х байт, составляющих число типа double, получить это число? - C++

27.08.2008, 16:09. Просмотров 969. Ответов 3
Метки нет (Все метки)

Как из 4-х байт, составляющих число типа double, получить это число?

Пример:
unsigned char tmp[4]={63,128,0,0}; // значение double=1.0
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.08.2008, 16:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как из 4-х байт, составляющих число типа double, получить это число? (C++):

Как разделить переменую типа double на целое и дробное число ? - C++
Как разделить переменую типа double на целое и дробное число ? Добавлено через 23 минуты Нашол решение : #include <iostream> ...

Как считывать только одно число типа double за один проход - C++
Теперь измените тело цикла так, чтобы он считывал только одно число типа double за один проход. Определите две переменные, чтобы...

Как проверить вводилось ли число (типа double или float) в консоль - C++
Как проверить вводилось ли число (типа double или float) в консоль?

Как правильно число в ячейке типа string, перекинуть в ячейку в тип double ? - C++
Cуть вопроса описанна в теме. Может не правильно объяснил, но всё же, вот пример: #include <iostream> #include <string> ...

как соединить b и с в число, если а это число, б это десятки перевернутого числа, с это единицы перевернутого числа вот в это строчке c=a+b,c; - C++
как соединить b и с в число, если а это число, б это десятки перевернутого числа, с это единицы перевернутого числа вот в это строчке...

Дайте денормализованное число типа double - C++
Нужно для текста, число надо разобрать на мантиссу и порядок и снова собрать.

3
Stan
27.08.2008, 17:47 #2
Длина числа типа double 8 байт, а не 4
Посмотреть как в памяти предствляется число типа double
можно так:

void my_memmove(unsigned char* Receiver, unsigned char* Source, int ByteCount) {
int i;

for(i=0;i<ByteCount;i++) Receiver[i]=Source[i];
}

void main() {
unsigned char tmp1[4], tmp2[8];

double a=1234.56789;

my_memmove(tmp1, (unsigned char*) &a, 4);
my_memmove(tmp2, (unsigned char*) &a, 8);
a= *((double*)&tmp1[0]);
a= *((double*)&tmp2[0]);
}
Adil
31.08.2008, 15:17 #3
Stan: со всем, согласен, только что за 'my_memmove'
есть же 'memcpy'?
Да и имя массива - суть указатель на его начало =>
a=*(double*)tmp1;//так проще

Удачи.
Stan
01.09.2008, 19:20 #4
В свою очередь полностью со всем согласен :-)
01.09.2008, 19:20
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.09.2008, 19:20
Привет! Вот еще темы с ответами:

Разбить число типа double на 2 числа - C++
Добрый день! Попалась мне такая задача - есть 2 интовые переменные, есть число double. Их нужно сложить таким образом : к 1-му интовому...

Проверить, является ли число, записанное в переменную типа Double, иррациональным - C++
Помогите. Нужно узнать, целое ли записанное в переменную double число, или же имеет дробную часть. Что-то нет никаких мыслей. Спасибо

Дано 2-ух-значное число. Сделать так, чтоб программа преобразовала это число в новое число кол-во десятков - C++
Тоесть, для примера, мы вводим число 23, а программа выводит нам 32 (числа наоборот).

Написать функцию, формирующую на базе исходной строки число типа Double - C++
ребята программисты, помогите. Дана строка, содержащая число с десятичной точкой. написать программу с функцией, формирующей на базе...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru