Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Sash00k
0 / 0 / 0
Регистрация: 13.05.2013
Сообщений: 3
#1

float в HEX и обратно - C++

13.05.2013, 22:41. Просмотров 1096. Ответов 1
Метки нет (Все метки)

У меня возникли трудности с конвертацией числа типа float (например 2.534) в 4 байта HEX (например строка FFAAFFAA) и обратно. Тип числа SXXX-XXXX-XMMM-MMMM-MMMM-MMMM-MMMM-MMMM где S-это битовый знак, X-порядок, а М-это мантисса. Помогите пожалуйста реализовать ))

Добавлено через 1 час 40 минут
Up )))

Добавлено через 27 минут
)))))

Добавлено через 1 час 56 минут
Помогите, очень срочно нужно ))
http://www.cyberforum.ru/cpp-beginners/thread915523.html
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.05.2013, 22:41
Я подобрал для вас темы с готовыми решениями и ответами на вопрос float в HEX и обратно (C++):

Функция перевода из Float в Hex
Подскажите функции для перевода вещественного числа в шестнадцатеричное число,...

Как перевести строку в hex и обратно?
Немогу найти в гугле функцию какбы перевести строку в hex и обратно, мб у кого...

Преобразование CString->float и обратно
Здравствуйте. Можно ли строку типа CString преобразовать в число типа float...

Double / float в строку и обратно
знаю есть готовые методы, мне просто интересен алгоритм, как это можно...

опять ошибка.на этот раз cannot convert `float (*)(float)' to `float' in argument passing
#include<stdio.h> #include<stdlib.h> #include<math.h> float f1(float...

1
Tulosba
:)
Эксперт С++
4746 / 3240 / 496
Регистрация: 19.02.2013
Сообщений: 9,046
13.05.2013, 23:03 #2
Лучший ответ Сообщение было отмечено Sash00k как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <cstdint>
#include <iostream>
#include <iomanip>
 
int main()
{
    float f = 2.534;
 
    uint8_t* pb = reinterpret_cast<uint8_t*>(&f);
 
    std::cout << std::setfill( '0' );
 
    for( int i=3;i>=0; --i )
        std::cout << std::hex << std::setw(2) << (int)pb[i] << " ";
    std::cout << std::endl;
 
    std::system( "pause" );
}
Для дополнительного чтения Число одинарной точности
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.05.2013, 23:03
Привет! Вот еще темы с решениями:

Если HEX одного файла заменить на HEX другого, то изменится ли файл и будет ли работоспособным?
Привет, если два файла a.exe(калькулятор) и b.exe(выводит строку &quot;Hello World&quot;)...

[BMP] HEX (из HEX-редактора) в DEC
Имеется файл *.bmp (который нельзя вложить в сообщение). В самом файле есть его...

Чем отличаются float преобразования (float)var от float(var)
Здравствуйте! Подскажите, чем отличается (float)var от float(var)

Std::count << std::hex << (long) 0x0a; Как сделать, чтоб от HEX значения ноль при выводе не убирался?
сабж...( std::count &lt;&lt; std::hex &lt;&lt; (long) 0x0a; ) выводится просто a, вместо...


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

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

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