जब static कीवर्ड का उपयोग किया जाता है, तो वेरिएबल या डेटा मेंबर्स या फंक्शन को फिर से संशोधित नहीं किया जा सकता। यह प्रोग्राम के जीवनकाल के लिए आवंटित होता है। स्टेटिक फंक्शन को क्लास नाम का उपयोग करके सीधे कॉल किया जा सकता है।
स्टेटिक वेरिएबल केवल एक बार आरंभ किए जाते हैं। कंपाइलर वेरिएबल को प्रोग्राम के अंत तक बनाए रखता है। स्टेटिक वेरिएबल को फंक्शन के अंदर या बाहर परिभाषित किया जा सकता है। वे ब्लॉक के लिए लोकल होते हैं। स्टेटिक वेरिएबल का डिफ़ॉल्ट मान शून्य होता है। स्टेटिक वेरिएबल प्रोग्राम के निष्पादन तक जीवित रहते हैं।
C भाषा में स्टेटिक वेरिएबल का सिंटैक्स यहाँ है,
static datatype variable_name = value;
यहाँ,
datatype - int, char, float आदि जैसे वेरिएबल का डेटा टाइप।
variable_name - उपयोगकर्ता द्वारा दिया गया वेरिएबल का नाम।
value - वेरिएबल को आरंभ करने के लिए कोई भी मान। डिफ़ॉल्ट रूप से, यह शून्य है।
C भाषा में स्टेटिक वेरिएबल का एक उदाहरण यहाँ है,
उदाहरण
#include <stdio.h>
int main()
{
static int a = 8;
int b = 10;
printf("Value of static variable : %d\n", a);
printf("Value of non-static variable : %d\n", b);
return 0;
}
आउटपुट
Value of static variable : 8 Value of non-static variable : 10
उपरोक्त प्रोग्राम में, दो वेरिएबल घोषित किए जाते हैं, एक स्टेटिक है और दूसरा नॉन-स्टेटिक। वेरिएबल मानों के साथ आरंभ किए जाते हैं और निम्नानुसार प्रदर्शित किए जाते हैं -
static int a = 8;
int b = 10;
printf("Value of static variable : %d\n", a);
printf("Value of non-static variable : %d\n", b);