Global bir değişken, bir programdaki her fonksiyon tarafından görülebilen bir değişkendir. Yerel değişkenler yalnızca bildirildikleri işlev tarafından görülebilir. Arduino ortamında, bir fonksiyonun dışında bildirilen herhangi bir değişken (örn. setup(), loop(), vb.), global bir değişkendir.
Programlar daha büyük ve daha karmaşık hale gelmeye başladığında, yerel değişkenler, yalnızca bir işlevin kendi değişkenlerine erişimi olmasını sağlamanın yararlı bir yoludur. Bu, bir işlev yanlışlıkla başka bir işlev tarafından kullanılan değişkenleri değiştirdiğinde programlama hatalarını önler.
Bir for döngüsü içinde bir değişkeni bildirmek ve başlatmak bazen kullanışlıdır. Bu, yalnızca for döngüsü parantezlerinin içinden erişilebilen bir değişken oluşturur.
int gPWMval; // herhangi bir fonksiyon bu değişkeni görecektir
void setup() {
//...
}
void loop() {
int i; // "i" sadece "döngü(loop)" içinde "görünür(visible)"
int f; // "f" sadece "döngü(loop)" içinde "görünür(visible)"
//...
for (int j = 0; j < 100; j++) {
// j değişkenine yalnızca for döngüsü parantezleri içinde erişilebilir
}
}