Float

Материал из MK90.ORG wiki
Перейти к: навигация, поиск

Справка Язык | Библиотеки | Сравнение | Изменения

float

Описание

Тип данных с плавающей точкой - число, которое имеет дробную часть. Числа с плавающей точкой часто используются для хранения аналоговых или непрерывных величин, поскольку имеют большее разрешение, чем целые числа - от 3.4028235E+38 до -3.4028235E+38. Они занимают в памяти 32 бита (4 байта).

Числа с плавающей точкой имеют только 6-7 десятичных знаков (имеется ввиду общее число цифр, а не число цифр после десятичной точки). В отличие от других платформ, где можно увеличить точность за счет использования типа double (например, до 15), для Arduino тип double идентичен float.

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

Вычисления с плавающей точкой гораздо медленнее, чем с целыми, поэтому избегайте их в критичных по времени выполнения фрагментах скетча. Иногда программисты идут на определенные изощрения, только чтобы заменить арифметику с плавающей точкой на более быстрые вычисления с целыми значениями.

Пример


    float myfloat;
    float sensorCalbrate = 1.117;

Синтаксис

    float var = val; 

var - имя переменной

val - присваиваемое значение

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


   int x;
   int y;
   float z;

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

Смотри также

Руководство по Wiring


Исправления, пожелания и новые статьи должны быть опубликованы через Форум.

Оригинальные тексты руководств и переводы распространяются Arduino и MK90 на условиях лицензии Creative Commons Attribution-ShareAlike 3.0 License. Примеры исходных кодов и ссылки являются общественным достоянием.