int

Описание

Целые числа — это ваш основной тип данных для хранения чисел.

На Arduino UNO (и других платах на базе ATmega) int хранит 16-битное (2-байтовое) значение. Это даёт диапазон от -32 768 до 32 767 (минимальное значение -2^15 и максимальное значение (2^15) - 1). На Arduino Due и платах на базе SAMD (таких как MKR 1000 WiFi и Zero) int хранит 32-битное (4-байтовое) значение. Это даёт диапазон от -2 147 483 648 до 2 147 483 647 (минимальное значение -2^31 и максимальное значение (2^31) - 1).

Тип int хранит отрицательные числа методом, называемым дополнительный код. Старший бит, иногда называемый битом «знака», отмечает число как отрицательное. Остальные биты инвертируются и прибавляется 1.

Arduino заботится об обработке отрицательных чисел за вас, поэтому арифметические операции работают прозрачно, как ожидается. Однако может возникнуть неожиданное затруднение при работе с оператором сдвига вправо (

>>

).

Синтаксис

int var = val;

Параметры

  • var: имя переменной.

  • val: значение, присваиваемое этой переменной.

Пример кода

Этот код создаёт целочисленную переменную countUp, которая изначально установлена в 0 (ноль). Переменная увеличивается на 1 (единицу) в каждом цикле и отображается в Serial Monitor.

int countUp = 0;            // создаёт целочисленную переменную 'countUp'

void setup() {
  Serial.begin(9600);       // используем последовательный порт для вывода числа
}

void loop() {
  countUp++;                // прибавляет 1 к countUp в каждом цикле
  Serial.println(countUp);  // выводит текущее состояние countUp
  delay(1000);
}

Примечания и предупреждения

Предупреждение

Когда знаковые переменные превышают свою максимальную или минимальную ёмкость, они переполняются. Результат переполнения непредсказуем, поэтому этого следует избегать. Типичный симптом переполнения — это «откат» переменной с её максимальной ёмкости на минимальную или наоборот, но это не всегда так. Если требуется такое поведение, используйте

unsigned int

.

Смотрите также