Arduino:Справочник языка Arduino/Типы данных/float

Материал из ВикиСправочника
Перейти к: навигация, поиск

{{#setlogo:ArduinoCommunityLogo.png}}

Проверка/Оформление/Редактирование: Мякишев Е.А.


float

Тип данных float служит для хранения чисел с плавающей запятой. Этот тип часто используется для операций с данными, считываемыми с аналоговых входов. Диапазон значений — от -3.4028235E+38 до 3.4028235E+38. Переменная типа float занимает 32 бита (4 байта) в памяти.

Тип float имеет точность 6-7 знаков, имеются ввиду все знаки, а не только мантисса. Обычно для увеличения точности используют другой тип - double, но на платформе Arduino, double и float имеют одинаковую точность.

Хранение в памяти чисел с плавающей точкой в двоичной системе обуславливает потерю точности. Так, например, 6.0 / 3.0 не обязательно равен 2.0. Сравнивая два числа с плавающей точкой следует проверять не точное равенство, а разницу между этими числами, меньше ли она некого выбранной малого порога.

Следует также учитывать, что арифметические операции над числами с плавающей запятой выполняются существенно медленнее, чем над целыми.

Пример

  1. float myfloat;
  2. float sensorCalbrate = 1.117;

Синтаксис

  1. float var = val;
  2. var - имя переменной
  3. val  - присваиваемое значение

Пример использования в коде

  1. int x;
  2. int y;
  3. float z;
  4.  
  5. x = 1;
  6. y = x / 2;            // y теперь равен 0, тип int не может хранить дробные числа
  7. z = (float)x / 2.0;   // z равна .5 (следует использовать 2.0, а не 2)

См.также

Внешние ссылки