משתנה גלובלי (global) הוא משתנה שאפשר לגשת אליו מכל פונקציה בתוכנית. משתנה מקומי (local) הוא משתנה שנגיש רק מתוך הפונקציה בה הוא מוגדר. בסביבת Arduino כל משתנה שמוגדר מחוץ לפונקציות (כמו
()setup
או ()loop
וכו') הם משתנים גלובליים (global).כשהתוכנית שאתם כותבים גדלה והופכת להיות מסובכת יותר, שימוש במשתנים מקומיים (local) עדיף כדי להבטיח שרק לפונקציה אחת יש גישה למשתנים של עצמה. זה יכול למנוע טעויות תכנות כאשר פונקציה אחת משנה בטעות את המשתנים של פונקציה אחרת.
לפעמים זה גם שימושי להכריז ולאתחל משתנה בתוך לולאת
for
. כך נוצר משתנה שנגיש רק מתוך הקוד הנמצא בסוגריים מסולסלים של הלולאה.דוגמה
- קוד: בחר הכל
int gPWMval; // any function will see this variable
void setup()
{
// ...
}
void loop()
{
int i; // "i" is only "visible" inside of "loop"
float f; // "f" is only "visible" inside of "loop"
// ...
for (int j = 0; j <100; j++){
// variable j can only be accessed inside the for-loop brackets
}
}
ראו גם:
פירוט שפת תכנות לסביבת Arduinoעמוד זה הוא תרגום של Variable Scope לפי רישיון Creative Commons Attribution-ShareAlike 3.0.