В чем разница между float, double и long double |
![]() |
Добавил(а) microsin |
На 32-разрядной платформе ARM, в среде разработки IAR EWB for ARM применены следующие типы float, double и long double. float - 32-битное число с плавающей точкой. Диапазон чисел от ±1.18E-38 до ±3.39E+38, 7 десятичных разрядов, 8 бит показателя степени (экспонента) и 23 бита основания степени (мантисса). double - 64-битное число с плавающей точкой. Диапазон чисел от ±2.23E-308 to ±1.79E+308, 15 десятичных разрядов, 11 бит показателя степени (экспонента) и 52 бита основания степени (мантисса). long double - абсолютно то же самое, что и double. Операции с числами в формате с плавающей точкой весьма неэффективны по затратам кода, памяти и процессорного времени, поэтому таких чисел нужно по возможности избегать, или хотя бы использовать float вместо double. Информация получена из документа справки "IAR C/C++ Development Guide" EWARM_DevelopmentGuide.ENU.pdf, раздел "FLOATING-POINT TYPES". [См. также] 1. Описание стандартных функций < cmath > (math.h) site:cplusplus.com. |