Форум программистов, компьютерный форум CyberForum.ru

Как получить битики float - C++

Восстановить пароль Регистрация
 
 
Klafe
1 / 1 / 0
Регистрация: 13.10.2012
Сообщений: 101
02.02.2014, 19:32     Как получить битики float #1
Здравствуйте!

Кто-нибудь знает как получить битики у float?

C++
1
2
3
4
5
6
7
8
9
10
11
12
 
vector<bool>code;
int i2 = 0;
float one = 1;
float x = 0.36 ;
for (int i = 0; i < 3; i++){
int res = (x & one)>>i2; // с float не работает
if (res) code.push_back(1);
code.push_back(0);
one << 1;
i2++;
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
 
vector<bool>code;
int one = 1;
float x = 0.36 ;
int * ptr = (int*) (&x);
for (int i = 0; i < 3; i++){
int res = (*ptr & one)>>i2; // тоже не получается
if (res) code.push_back(1);
code.push_back(0);
one << 1;
i2++;
}
Уже что только не пробовал!

Как это можно реализовать? Подскажите пожалуйста!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Klafe
1 / 1 / 0
Регистрация: 13.10.2012
Сообщений: 101
03.02.2014, 10:49  [ТС]     Как получить битики float #21
Цитата Сообщение от Toshkarik Посмотреть сообщение
Вы, видать, не имеете представления о том, как хранятся числа с плавающей точкой в памяти.
Да, как-то не сталкивался!

Надо будет на досуге разобраться.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.02.2014, 12:52     Как получить битики float
Еще ссылки по теме:

cannot convert `float' to `float*. Почему так происходит? C++
C++ Получить в вектора, float
C++ Чем отличаются float преобразования (float)var от float(var)

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

Или воспользуйтесь поиском по форуму:
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
03.02.2014, 12:52     Как получить битики float #22
Klafe, вот еще один метод. в этот раз он точно работает. я сверился с Википедией.
C++
1
2
    double b = 1.0000000000000002;
cout << (bitset<64>) *((ULONGLONG*)&b) << endl;
Yandex
Объявления
03.02.2014, 12:52     Как получить битики float
Ответ Создать тему
Опции темы

Текущее время: 04:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru