C भाषा में वैश्विक और स्थिर दोनों चरों को स्थिर मानों के साथ प्रारंभ किया जाना चाहिए। ऐसा इसलिए है क्योंकि निष्पादन शुरू होने से पहले इन चरों के मान ज्ञात होने चाहिए। यदि वैश्विक और स्थिर चर के लिए स्थिर मान प्रदान नहीं किए जाते हैं तो एक त्रुटि उत्पन्न होगी।
एक प्रोग्राम जो वैश्विक और स्थिर चर के आरंभीकरण को प्रदर्शित करता है, वह इस प्रकार दिया गया है।
उदाहरण
#include <stdio.h> int a = 5; static int b = 10; int main() { printf("The value of global variable a : %d", a); printf("\nThe value of global static variable b : %d", b); return 0; }
आउटपुट
उपरोक्त कार्यक्रम का आउटपुट इस प्रकार है।
The value of global variable a : 5 The value of global static variable b : 10
अब, उपरोक्त कार्यक्रम को समझते हैं।
वैश्विक चर a का मान 5 है और स्थिर चर b का मान 10 है। इसलिए, यह प्रोग्राम आवश्यकतानुसार काम करता है।
यदि स्थिरांक का उपयोग वैश्विक और स्थिर चरों को प्रारंभ करने के लिए नहीं किया जाता है, तो इससे त्रुटि हो जाएगी। एक कार्यक्रम जो इसे प्रदर्शित करता है वह इस प्रकार है।
#include <stdio.h> int func() { return 25; } int main() { static int a = func(); printf("%d ", a); }
उपरोक्त कार्यक्रम एक त्रुटि की ओर जाता है "प्रारंभकर्ता तत्व स्थिर नहीं है"। इसलिए, वैश्विक और स्थिर चर को केवल स्थिरांक के साथ प्रारंभ किया जाना चाहिए।