Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

C/C++ में ग्लोबल और स्टेटिक वेरिएबल उनके डिफ़ॉल्ट मानों से क्यों आरंभ किए जाते हैं?

ग्लोबल और स्टेटिक वेरिएबल उनके डिफ़ॉल्ट मानों से आरंभ किए जाते हैं क्योंकि यह C या C++ मानकों में है और कंपाइल समय पर शून्य से मान असाइन करना मुफ़्त है। दोनों स्टेटिक और ग्लोबल वेरिएबल जनरेटेड ऑब्जेक्ट कोड के लिए समान व्यवहार करते हैं। ये वेरिएबल .bss फाइल में आवंटित होते हैं और लोडिंग के समय यह वेरिएबल को आवंटित कॉन्स्टेंट प्राप्त करके मेमोरी आवंटित करता है।

ग्लोबल और स्टेटिक वेरिएबल का एक उदाहरण निम्नलिखित है।

उदाहरण

#include <stdio.h>
int a;
static int b;
int main()
{
    int x;
    static int y;
    int z = 28;
    printf("The default value of global variable a : %d", a);
    printf("\nThe default value of global static variable b : %d", b);
    printf("\nThe default value of local variable x : %d", x);
    printf("\nThe default value of local static variable y : %d", y);
    printf("\nThe value of local variable z : %d", z);
    return 0;
}

आउटपुट

The default value of global variable a : 0
The default value of global static variable b : 0
The default value of local variable x : 0
The default value of local static variable y : 0
The value of local variable z : 28

उपरोक्त प्रोग्राम में, ग्लोबल वेरिएबल main() फंक्शन के बाहर घोषित किए जाते हैं और उनमें से एक स्टेटिक वेरिएबल है। तीन लोकल वेरिएबल घोषित किए जाते हैं और वेरिएबल z को आरंभ भी किया जाता है।

int a;
static int b;
...
int x;
static int y;
int z = 28;

उनके डिफ़ॉल्ट मान प्रिंट किए जाते हैं।

printf("The default value of global variable a : %d", a);
printf("\nThe default value of global static variable b : %d", b);
printf("\nThe default value of local variable x : %d", x);
printf("\nThe default value of local static variable y : %d", y);
printf("\nThe value of local variable z : %d", z);
  1. - C++ में ग्लोबल वेरिएबल्स क्या हैं?

    ग्लोबल वेरिएबल्स सभी फंक्शन्स के बाहर परिभाषित होते हैं, आमतौर पर प्रोग्राम के शीर्ष पर। ग्लोबल वेरिएबल्स आपके प्रोग्राम के पूरे जीवनकाल में अपना मान बनाए रखते हैं। एक ग्लोबल वेरिएबल को किसी भी फंक्शन द्वारा एक्सेस किया जा सकता है। यानी, एक ग्लोबल वेरिएबल इसकी घोषणा के बाद आपके पूरे प्रोग्राम में उ

  1. - C++ लोकल और ग्लोबल वेरिएबल्स डिफ़ॉल्ट रूप से कैसे इनिशियलाइज़ होते हैं?

    लोकल और ग्लोबल दोनों वेरिएबल्स के लिए निम्नलिखित समान है। मूल रूप से, जब भी आप कोई वेरिएबल घोषित करते हैं, कंपाइलर इसके डिफ़ॉल्ट कंस्ट्रक्टर को कॉल करेगा जब तक कि आप अन्यथा निर्दिष्ट न करें। भाषा-स्तर के प्रकार (जैसे पॉइंटर्स, int, float, bool, आदि) डिफ़ॉल्ट कंस्ट्रक्टर कुछ भी नहीं करता, यह केवल मे

  1. - Java में इंटरफेस वेरिएबल्स डिफ़ॉल्ट रूप से static और final क्यों होते हैं?

    एक इंटरफेस व्यवहार का प्रोटोकॉल परिभाषित करता है, न कि हमें कैसे कार्यान्वित करना चाहिए। जो क्लास इंटरफेस को इम्प्लीमेंट करती है, वह उस इंटरफेस द्वारा परिभाषित प्रोटोकॉल का पालन करती है। इंटरफेस वेरिएबल्स static होते हैं क्योंकि Java इंटरफेस को अपने आप इंस्टेंशिएट नहीं किया जा सकता। वेरिएबल का मा