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

C भाषा में एक चर के जीवनकाल को समझाइए।

भंडारण वर्ग चर के दायरे, जीवनकाल और बंधन को निर्दिष्ट करते हैं।

एक चर को पूरी तरह से परिभाषित करने के लिए, किसी को न केवल इसके 'प्रकार' बल्कि इसके भंडारण वर्ग का भी उल्लेख करना होगा।

एक चर नाम कंप्यूटर मेमोरी के भीतर कुछ भौतिक स्थान की पहचान करता है, जहां चर के मूल्यों को संग्रहीत करने के लिए बिट्स का संग्रह आवंटित किया जाता है।

भंडारण वर्ग हमें निम्नलिखित कारक बताता है -

  • वेरिएबल कहाँ संग्रहीत किया जाता है (मेमोरी या सीपीयू रजिस्टर में)?
  • अगर कुछ भी इनिशियलाइज़ नहीं किया गया है, तो वेरिएबल का प्रारंभिक मान क्या होगा?
  • चर का दायरा क्या है (जहां इसे एक्सेस किया जा सकता है)?
  • चर का जीवन काल क्या है?

आजीवन

एक चर का जीवनकाल उस अवधि को परिभाषित करता है जिसके लिए कंप्यूटर इसके लिए मेमोरी आवंटित करता है (मेमोरी के आवंटन और डीलोकेशन के बीच की अवधि)।

सी भाषा में, एक चर में स्वचालित, स्थिर या गतिशील जीवनकाल हो सकता है।

  • स्वचालित - स्वचालित जीवनकाल वाला एक चर बनाया जाता है। हर बार, उनकी घोषणा का सामना करना पड़ता है और नष्ट कर दिया जाता है। साथ ही, उनके ब्लॉक निकल गए हैं।
  • स्थिर - जब डिक्लेरेशन पहली बार निष्पादित किया जाता है तो एक वेरिएबल बनाया जाता है। निष्पादन रुकने/समाप्त होने पर इसे नष्ट कर दिया जाता है।
  • गतिशील - चर स्मृति आवंटित और स्मृति प्रबंधन कार्यों के माध्यम से हटा दी जाती है।

भंडारण कक्षाएं

C भाषा में चार स्टोरेज क्लास हैं -

Storage Class स्टोरेज एरिया डिफ़ॉल्ट प्रारंभिक मान लाइफटाइम स्कोप कीवर्ड
स्वचालित स्मृति जब तक नियंत्रण ब्लॉक में रहता है जब तक नियंत्रण ब्लॉक में रहता है स्थानीय स्वतः
पंजीकरण करें CPU रजिस्टर कचरा मूल्य जब तक नियंत्रण ब्लॉक में रहता है स्थानीय पंजीकरण करें
स्थिर स्मृति शून्य फ़ंक्शन कॉल के बीच मान स्थानीय स्थिर
बाहरी स्मृति कचरा मूल्य कार्यक्रम निष्पादन के दौरान वैश्विक बाहरी

उदाहरण

स्वचालित भंडारण वर्ग के लिए सी कार्यक्रम निम्नलिखित है -

#include<stdio.h>
main ( ){
   auto int i=1;{
      auto int i=2;{
         auto int i=3;
         printf ("%d",i)
      }
      printf("%d", i);
   }
   printf("%d", i);
}

आउटपुट

जब उपरोक्त प्रोग्राम को निष्पादित किया जाता है, तो यह निम्न आउटपुट उत्पन्न करता है -

3 2 1

उदाहरण

बाह्य भंडारण वर्ग के लिए सी कार्यक्रम निम्नलिखित है -

#include<stdio.h>
extern int i =1; /* this ‘i’ is available throughout program */
main ( ){
   int i = 3; /* this ‘i' available only in main */
   printf ("%d", i);
   fun ( );
}
fun ( ) {
   printf ("%d", i);
}

आउटपुट

जब उपरोक्त प्रोग्राम को निष्पादित किया जाता है, तो यह निम्न आउटपुट उत्पन्न करता है -

3 1

  1. सी भाषा में और-अगर सीढ़ी बयान समझाओ

    बहु-मार्गीय निर्णय लिखने का यह सबसे सामान्य तरीका है। सिंटैक्स नीचे दिए गए सिंटैक्स को देखें - if (condition1) stmt1; else if (condition2) stmt2; - - - - - - - - - - else if (condition n) stmtn; else stmt x; एल्गोरिदम नीचे दिए गए एल्गोरिथम को देखें - START Step 1: Declare int variables. Step 2:

  1. सी भाषा में नेस्टेड इफ-स्टेटमेंट की व्याख्या करें

    एक नेस्टेड अगर एक if स्टेटमेंट है जो कि या तो (या) किसी और का ऑब्जेक्ट है। if दूसरे के अंदर रखा जाता है अगर (या) और। सिंटैक्स नीचे दिए गए सिंटैक्स को देखें - if (condition1){    if (condition2)       stmt1;    else       stmt2; } else{    

  1. सी भाषा में 'सरल अगर' कथन की व्याख्या करें

    तार्किक स्थिति के सही होने पर if कीवर्ड का उपयोग कथनों के एक सेट को निष्पादित करने के लिए किया जाता है। सिंटैक्स सिंटैक्स नीचे दिया गया है - if (condition){    Statement (s) } सरल अगर कथन का कार्य करना if ब्लॉक के अंदर स्टेटमेंट केवल तभी निष्पादित होता है जब कंडीशन सही हो, अन्यथा नही