Область видимости переменной

В языке программирования C, использующемся при программировании Ардуино, переменные имеют свойство, называемое область видимости, чего нельзя сказать про первые языки программирования (подобные BASIC), в которых все переменные являются глобальными.

Глобальная переменная — эта та переменная, которая может быть доступна («видна«) из любой функции программы. Локальные переменные доступны только внутри тех функций, в которых они объявлены. При программировании Ардуино, любая переменная, объявленная за пределами функции (таких как, setup(), loop(), и т.д.), является глобальной переменной.

По мере роста программ и увеличения их сложности, локальные переменные становятся незаменимым инструментом, гарантирующим, что доступ к переменным будет иметь только та функция, в которой они объявлены. Это предотвращает ошибки в программе, при которых одна функция случайно изменяет переменные, используемые в другой функции.

Также иногда удобно объявить и инициализировать переменную внутри цикла for. В этом случае переменная будет доступна только в пределах скобок цикла for.

Пример:


int gPWMval;  // эта переменная будет доступна из любой функции

void setup()
{
  // ...
}

void loop()
{
  int i;    // переменная "i" "видна" только внутри "loop"
  float f;  // переменная "f" "видна" только внутри "loop"
  // ...

  for (int j = 0; j <100; j++){
  // переменная j доступна только внутри скобок цикла for
  }

}
Ардуино