C-Control II Station
Abarbeitung einer Funktion. Sie sind nur innerhalb dieses Kontextes sichtbar und
zugreifbar. Beim Verlassen einer Funktion endet der Lebenszyklus einer lokalen Variable.
Beim Wiedereintritt in diese Funktion oder dem parallelen Aufrufen der Funktion durch
einen anderen Thread ist der Wert einer lokalen Variable stets unbestimmt.
Eine Sonderform stellen lokale Variablen von Threads dar. Da der Speicherkontext von
Threads während des gesamten Programmlaufes bestehen bleibt, auch für angehaltene
Threads, existieren die lokalen Variablen eines Threads quasi-statisch. Ein Bytearray könnte
somit auch als Pufferspeicher für Datenübertragungen verwendet werden (siehe
Bibliotheksmodul hwcom.c2).
z.B.
thread tx
{
byte buf [48];
//...
}
Bei der Vergabe von Namen für lokale Variablen ist zu beachten, daß sie eventuell
globale Bezeichner desselben Moduls verdecken. Will man dann auf gleichnamige
globale Bezeichner zugreifen, muß zusätzlich der Modulname spezifiziert werden, als
würde sich der globale Bezeichner in einem anderen Modul befinden.
z.B. in Modul a.c2
int i;
function fx ()
{
int i;
i = 0; // <- lokales i
a.i = 0; // <- globales i
}
52