Arduino:Справочник языка Arduino/Область видимости переменных и квалификаторы/Область видимости: различия между версиями
Myagkij (обсуждение | вклад) Нет описания правки |
Myagkij (обсуждение | вклад) |
||
Строка 34: | Строка 34: | ||
==См.также== | ==См.также== | ||
{{ads}} | |||
==Внешние ссылки== | ==Внешние ссылки== |
Версия от 23:37, 17 марта 2020
Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Область видимости переменных
Переменные в языке программирования С, используемом Arduino, обладают свойством, которое называется область видимости, в отличие от языков, подобных BASIC, где каждая переменная является глобальной.
Глобальная переменная доступна для любой функции в программе. Локальные переменные видны только в той функции, в которой они объявлены. В среде Arduino любая переменная, объявленная вне функции (например, setup(), loop() и т.д.), является глобальной переменной.
Когда программа начинает разрастаться и усложняться, использование локальных переменных – удобный способ, гарантирующий, что только одна функция будет иметь доступ к своим собственным переменным. Тем самым предотвращаются ошибки программирования, когда одна функция непреднамеренно изменяет значения переменных, используемых другой функцией.
Также иногда бывает удобно объявить и инициализировать переменную внутри цикла. При этом создается переменная, доступная только внутри скобок цикла for.
Пример
int gPWMval; // глобальная переменная, видима в любой функции скетча
void setup()
{
// ...
}
void loop()
{
int i; // "i" видима только внутри "loop"
float f; // "f" видима только внутри "loop"
// ...
for (int j = 0; j <100; j++){
// переменная j доступна только внутри этого цикла
}
}
См.также
Внешние ссылки