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

C/C++ में फंक्शन-लेवल स्टैटिक वेरिएबल्स कब इनिशियलाइज़ होते हैं?


स्थैतिक चरों को स्थिर कीवर्ड का उपयोग करके परिभाषित किया जा सकता है। वे वेरिएबल्स हैं जो प्रोग्राम के चलने के दौरान मेमोरी में रहते हैं यानी उनका जीवनकाल पूरा प्रोग्राम रन होता है। यह स्वचालित चरों से भिन्न है क्योंकि वे स्मृति में तभी रहते हैं जब उनका कार्य चल रहा होता है और कार्य समाप्त होने पर नष्ट हो जाते हैं।

फ़ंक्शन-स्तरीय स्थिर चर पहली बार उपयोग किए जाने पर बनाए और प्रारंभ किए जाते हैं, हालांकि तब के लिए मेमोरी प्रोग्राम लोड समय पर आवंटित की जाती है।

एक प्रोग्राम जो C में फंक्शन-लेवल स्टैटिक वेरिएबल्स को प्रदर्शित करता है, वह इस प्रकार दिया गया है -

उदाहरण

#include<stdio.h>
int func() {
   static int num = 0;
   num += 5;
   return num;
}
int main() {
   for(int i = 0; i<5; i++) {
      printf("%d\n", func());
   }
   return 0;
}

आउटपुट

उपरोक्त कार्यक्रम का आउटपुट इस प्रकार है।

5
10
15
20
25

आइए अब उपरोक्त कार्यक्रम को समझते हैं।

फ़ंक्शन func() में एक स्थिर चर संख्या होती है जिसे 0 से प्रारंभ किया जाता है। फिर संख्या 5 से बढ़ जाती है और इसका मान वापस कर दिया जाता है। इसे दिखाने वाला कोड स्निपेट इस प्रकार है।

int func() {
   static int num = 0;
   num += 5;
   return num;
}

फ़ंक्शन मुख्य () में, फ़ंक्शन func () को लूप का उपयोग करके 5 बार कॉल किया जाता है और यह संख्या का मान देता है जो मुद्रित होता है। चूंकि num एक स्थिर चर है, यह प्रोग्राम के चलने के दौरान मेमोरी में रहता है और यह लगातार मान प्रदान करता है। इसे दिखाने वाला कोड स्निपेट इस प्रकार है।

int main() {
   for(int i = 0; i<5; i++) {
      printf("%d\n", func());
   }
   return 0;
}

  1. putwchar () सी/सी ++ में समारोह

    इस लेख में हम C++ STL में putwchar() फंक्शन की कार्यप्रणाली, सिंटैक्स और उदाहरणों पर चर्चा करेंगे। पुटवचर () क्या है? putwchar() फ़ंक्शन C++ STL में एक इनबिल्ट फ़ंक्शन है, जिसे हेडर फ़ाइल में परिभाषित किया गया है। putwchar () फ़ंक्शन का उपयोग मानक आउटपुट डिवाइस पर विस्तृत वर्ण लिखने के लिए किया जा

  1. memcpy() सी/सी++ में

    इस लेख में हम C++ STL में memcpy() फंक्शन की कार्यप्रणाली, सिंटैक्स और उदाहरणों पर चर्चा करेंगे। memcpy() क्या है? memcpy() फ़ंक्शन C++ STL में एक इनबिल्ट फ़ंक्शन है, जिसे हेडर फ़ाइल में परिभाषित किया गया है। memcpy () फ़ंक्शन का उपयोग मेमोरी के ब्लॉक को कॉपी करने के लिए किया जाता है। इस फ़ंक्शन क

  1. सी/सी ++ में एए पेड़?

    कंप्यूटर विज्ञान में AA ट्री को संतुलित ट्री के रूप में परिभाषित किया गया है, जो ऑर्डर किए गए डेटा को कुशलतापूर्वक संग्रहीत करने और पुनर्प्राप्त करने के लिए लागू किया गया है। एए पेड़ों को लाल-काले पेड़ की विविधता के रूप में माना जाता है, बाइनरी सर्च ट्री का एक रूप जो प्रविष्टियों के कुशल जोड़ और विल