С плавающей запятой к двоичному значению (C ++) - PullRequest
14 голосов
/ 23 января 2009

Я хочу взять число с плавающей запятой в C ++, например 2.25125, и массив int, заполненный двоичным значением, которое используется для хранения числа с плавающей запятой в памяти (IEEE 754).

Итак, я мог бы взять число и получить массив типа int num [16] с двоичным значением типа float: num [0] будет 1 num [1] будет 1 num [2] будет 0 num [3] будет 1 и так далее ...

Поместить int в массив не сложно, просто я застрял в процессе получения двоичного значения с плавающей точкой. Можете ли вы просто прочитать двоичный файл в памяти, что переменная с плавающей точкой? Если нет, то как я могу сделать это в C ++?

РЕДАКТИРОВАТЬ: причина для сравнения таким образом, что я хочу научиться выполнять побитовые операции в C ++.

Ответы [ 11 ]

0 голосов
/ 16 июля 2010

Самый простой способ:

float myfloat;
file.read((char*)(&myfloat),sizeof(float));
...