Типы данных в C относятся к обширной системе, используемой для объявления переменных или функций различных типов. Тип переменной определяет, сколько места она занимает в хранилище и как интерпретируется сохраненный битовый массив.
В следующей таблице представлены все типы данных, которые вы будете использовать во время программирования Arduino.
недействительным | логический | голец | Неподписанный символ | байт | ИНТ | Без знака int | слово |
долго | Длинный без знака | короткая | поплавок | двойной | массив | String-char массив | Строка-объект |
недействительным
Ключевое слово void используется только в объявлениях функций. Это указывает на то, что функция не должна возвращать информацию функции, из которой она была вызвана.
пример
Void Loop ( ) { // rest of the code }
логический
Логическое значение содержит одно из двух значений: true или false. Каждая логическая переменная занимает один байт памяти.
пример
boolean val = false ; // declaration of variable with type boolean and initialize it with false boolean state = true ; // declaration of variable with type boolean and initialize it with true
голец
Тип данных, занимающий один байт памяти, в котором хранится символьное значение. Символьные литералы пишутся в одинарных кавычках, например: «A», а для нескольких символов в строках используются двойные кавычки: «ABC».
Тем не менее, символы хранятся в виде чисел. Вы можете увидеть конкретную кодировку в диаграмме ASCII . Это означает, что можно выполнять арифметические операции над символами, в которых используется значение символа ASCII. Например, «A» + 1 имеет значение 66, поскольку значение ASCII заглавной буквы A равно 65.
пример
Char chr_a = ‘a’ ;//declaration of variable with type char and initialize it with character a Char chr_c = 97 ;//declaration of variable with type char and initialize it with character 97
без знака
Беззнаковый тип — это тип данных без знака, занимающий один байт памяти. Тип данных без знака кодирует числа от 0 до 255.
пример
Unsigned Char chr_y = 121 ; // declaration of variable with type Unsigned char and initialize it with character y
байт
Байт хранит 8-битное число без знака от 0 до 255.
пример
byte m = 25 ;//declaration of variable with type byte and initialize it with 25
ИНТ
Целые числа являются основным типом данных для хранения чисел. int хранит 16-битное (2-байтовое) значение. Это дает диапазон от -32 768 до 32 767 (минимальное значение -2 ^ 15 и максимальное значение (2 ^ 15) — 1).
Размер int варьируется от платы к доске. В Arduino Due, например, int хранит 32-битное (4-байтовое) значение. Это дает диапазон от -2 147 483 648 до 2 147 483 647 (минимальное значение -2 ^ 31 и максимальное значение (2 ^ 31) — 1).
пример
int counter = 32 ;// declaration of variable with type int and initialize it with 32
Без знака int
Целые числа без знака (целые числа без знака) аналогичны типу int в том, что они хранят 2-байтовое значение. Однако вместо хранения отрицательных чисел они хранят только положительные значения, что дает полезный диапазон от 0 до 65 535 (2 ^ 16) — 1). В Due хранится 4-байтовое (32-разрядное) значение в диапазоне от 0 до 4 294 967 295 (2 ^ 32 — 1).
пример
Unsigned int counter = 60 ; // declaration of variable with type unsigned int and initialize it with 60
слово
На платах Uno и других основанных на ATMEGA словах хранится 16-разрядное число без знака. На Due и Zero хранится 32-разрядное число без знака.
пример
word w = 1000 ;//declaration of variable with type word and initialize it with 1000
Долго
Длинные переменные являются переменными расширенного размера для хранения чисел и хранят 32 бита (4 байта), от -2 147 483 648 до 2 147 483 647.
пример
Long velocity = 102346 ;//declaration of variable with type Long and initialize it with 102346
без знака долго
Длинные переменные без знака являются переменными расширенного размера для хранения чисел и хранят 32 бита (4 байта). В отличие от стандартных длинных, беззнаковые длинные не будут хранить отрицательные числа, поэтому их диапазон составляет от 0 до 4 294 967 295 (2 ^ 32 — 1).
пример
Unsigned Long velocity = 101006 ;// declaration of variable with type Unsigned Long and initialize it with 101006
короткая
Short — это 16-битный тип данных. На всех Arduinos (на основе ATMega и ARM) шорт хранит 16-битное (2-байтовое) значение. Это дает диапазон от -32 768 до 32 767 (минимальное значение -2 ^ 15 и максимальное значение (2 ^ 15) — 1).
пример
short val = 13 ;//declaration of variable with type short and initialize it with 13
поплавок
Тип данных для числа с плавающей запятой — это число с десятичной точкой. Числа с плавающей точкой часто используются для аппроксимации аналоговых и непрерывных значений, поскольку они имеют большее разрешение, чем целые числа.
Числа с плавающей запятой могут достигать 3,4028235E + 38 и всего -3,4028235E + 38. Они хранятся в виде 32 бит (4 байта) информации.
пример
float num = 1.352;//declaration of variable with type float and initialize it with 1.352
двойной
На платах Uno и других платах на основе ATMEGA число с плавающей запятой двойной точности занимает четыре байта. То есть двойная реализация точно такая же, как и с плавающей точкой, без увеличения точности. В Arduino Due двойники имеют 8-байтовую (64-битную) точность.