Οι μεταβλητές στη γλώσσα προγραμματισμού της C, την οποία χρησιμοποιεί το Arduino, έχουν μια ιδιότητα που ονομάζεται εύρος. Αυτό έρχεται σε αντίθεση με τις πρόωρες εκδόσεις των γλωσσών όπως είναι η BASIC, όπου η κάθε μεταβλητή είναι μια καθολική μεταβλητή.

Μια καθολική μεταβλητή είναι αυτή που μπορεί να ειδωθεί από κάθε συνάρτηση σε ένα πρόγραμμα. Οι τοπικές μεταβλητές είναι ορατές μόνο στην συνάρτηση στην οποία δηλώνονται. Στο περιβάλλον του Arduino, αν η οποιαδήποτε μεταβλητή δηλωθεί εκτός συνάρτησης (π.χ. setup(), loop(), κλπ), τότε αυτή θα είναι μια καθολική μεταβλητή.

Όταν τα προγράμματα αρχίζουν να γίνονται μεγαλύτερα και πιο σύνθετα, τότε οι τοπικές μεταβλητές είναι ένας χρήσιμος τρόπος, για να διασφαλίσετε ότι μόνο μία συνάρτηση έχει πρόσβαση στις δικές της μεταβλητές. Αυτό αποτρέπει τα σφάλματα προγραμματισμού όταν μία συνάρτηση αλλάζει ακούσια τις μεταβλητές που χρησιμοποιούνται από μία άλλη συνάρτηση.

Επίσης, μερικές φορές είναι βολικό να γίνει η δήλωση και η αρχικοποίηση μιας μεταβλητής μέσα σε ένα βρόχο for. Αυτό δημιουργεί μια μεταβλητή που μπορεί να προσεγγιστεί μόνο μέσα από τις παρενθέσεις του βρόχου 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
  }

}

Επιστροφή στην σελίδα Παραπομπές Γλώσσας