Рекомендуем, 2020

Выбор редакции

Разница между поплавком и двойным

Float и Double оба являются типами данных в типе с плавающей точкой. Числа с плавающей точкой - это действительные числа с дробной составляющей. Основное различие между float и double заключается в том, что тип float имеет 32-битное хранилище. С другой стороны, тип double имеет 64-битное хранилище. Есть некоторые другие различия между float и double, которые обсуждаются в сравнительной таблице, приведенной ниже.

Сравнительная таблица:

Основа для сравнениятеркадвойной
точностьОдинарная точностьДвойная точность.
Биты32 бита64 бита
Б4 байта .8 байт.
Приблизительный диапазон1, 4e-045 до 3, 4e + 0384, 9e-324 до 1, 8e + 308
Представление битов1 бит представляет знак бита.
8 бит представляют экспоненту.
23 бита представляют мантиссу.
1 бит представляет знак бита.
11 бит представляют экспоненту.
52 бита представляют мантиссу.
точностьМенее точный.Более точным.

Определение поплавка

Тип с плавающей точкой является одним из типов с плавающей точкой. Тип данных с плавающей запятой имеет 32-разрядное хранилище (равное 4 байта) для переменной типа с плавающей запятой. Тип данных float указывает одинарную точность. Представление 32 бита в формате с плавающей запятой может быть объяснено как 1 бит представлен как знаковый бит, 8 бит представлены как показатель степени, а 23 бита представлены как мантисса. Максимальный диапазон типа с плавающей запятой - от 1.4e-045 до 3.4e + 038. По сравнению с двойным типом с плавающей точкой тип с плавающей точкой менее точен при математическом расчете. Давайте разберемся с плавающей точкой на примере.

 #include #include int main () {float num1 = sqrt (64.23) cout << num1; } // вывод 8.00060 

Как и в приведенном выше коде, вы можете заметить, что переменной с плавающей запятой num1 присваивается значение, которое является функцией sqrt (), которая возвращает квадратный корень из значения, переданного этой функции. Вы можете заметить, что когда печатается значение в num1, оно примерно соответствует точному значению, но не является точным. Давайте теперь посмотрим на пример ниже, когда та же программа выполняется с использованием double в качестве типа данных.

Определение двойного

Double - это второй тип данных с плавающей точкой. Тип данных double имеет 64-разрядное хранилище (равное 8 байтам) для переменной типа double. Он определяет двойную точность, так как его размер равен удвоенному значению. 64-битное представление типа double можно объяснить как 1 бит представляет знаковый бит, 11 бит представляет экспоненту, а оставшиеся 52 бита представляют мантиссу. Среди float и double наиболее часто используемый тип данных - double. Тип double используется при математических вычислениях, а также при необходимости идеальной точности. Математические функции sin (), cos () и sqrt () всегда возвращают двойное значение. Давайте разберемся с точностью типа данных double на примере.

 #include #include int main () {double num1 = sqrt (64.23) cout << num1; } // вывод 8.0143621 

Можно заметить, что вывод, полученный в примере с объяснением float, отличается от вывода, полученного в примере с объяснением double. Итак, из этого можно сказать, что результаты, полученные с помощью double, более точны по сравнению с float.

Ключевые различия между Float и Double

  1. Тип данных с плавающей точкой задает одинарную точность, что означает, что по сравнению с двойной он имеет меньшую точность, тогда как двойной тип определяет двойную точность, так как это просто двойная величина с плавающей точкой, его ошибка незначительна по сравнению с плавающей точкой.
  2. Переменная типа с плавающей запятой имеет 32-битное хранилище, тогда как переменная типа double имеет 64-битное хранилище, которое компилирует, что double больше в памяти по сравнению с плавающей запятой.
  3. Значение в float может варьироваться от 1, 4e-045 до 3, 4e + 038, тогда как значение типа double может варьироваться от 4, 9e-324 до 1, 8e + 308.
  4. Битовое представление значения с плавающей запятой напоминает, что 1 бит с плавающей запятой используется для пения, 8 бит для экспоненты и 23 бита для хранения мантиссы. С другой стороны, двойное значение напоминает, что его 1 бит используется для пения, 11 бит для экспоненты и 52 бита для хранения мантиссы.
  5. Следовательно, при сравнении с двойной плавающей точкой менее точным является математическое вычисление двойной.

Заключение:

Ну, как правило, вы должны использовать double, поскольку он обеспечивает точность, которая является нашим главным принципом в большинстве случаев.

Top