=====Verwendung von Static in C===== Die Bedeutung von static ist je nach Position im Code unterschiedlich. Siehe dazu die folgenden Erläuterungen. ==a==static vor einer Funktion==a== %%(c) static int berechne(int a) { // ... }; %% Effekte: ~-Die Funktion kann nur noch innerhalb des Moduls (innerhalb der c-Datei) aufgerufen werden. ~-Wesentlich wichtiger: Der Compiler kann aufgrund dieser Information ggf. besser optimieren! Gehen sie großzügig damit um. ==a==static vor einer globalen Variable==a== %%(c) static iValue; int berechne(int a) { iValue++; return iValue; }; %% Effekte: ~-Die Variable kann nur noch innerhalb des Moduls (innerhalb der c-Datei) aufgerufen werden. ~-Wesentlich wichtiger: Der Compiler kann aufgrund dieser Information ggf. besser optimieren! Gehen sie großzügig damit um. ==a==static vor einer lokalen Variable==a== %%(c) int berechne(int a) { static iValue = 5; iValue++; return iValue; }; %% Effekte: ~-Die Variable behält ihren Wert nach dem Verlassen der Funktion. Probieren sie es aus. ---- Siehe auch {{backlinks}}