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

सी . में भंडारण कक्षाएं

सी भाषा में, वेरिएबल और फ़ंक्शंस की विशेषताओं को स्टोरेज क्लासेस द्वारा वर्णित किया जाता है जैसे कि q वेरिएबल या फंक्शन की दृश्यता और स्कोप।

C भाषा में चार प्रकार के भंडारण वर्ग हैं:स्वचालित चर, बाहरी चर, स्थिर चर और रजिस्टर चर।

स्वतः

ऑटो स्टोरेज क्लास सभी स्थानीय चर के लिए डिफ़ॉल्ट स्टोरेज क्लास है। यह तब बनाया जाता है जब फ़ंक्शन कहा जाता है। जब फ़ंक्शन का निष्पादन पूरा हो जाता है, तो चर स्वचालित रूप से नष्ट हो जाते हैं।

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

दायरा - ऑटो वेरिएबल फ़ंक्शन ब्लॉक के लिए स्थानीय चर हैं।

डिफ़ॉल्ट मान − गारबेज मान डिफ़ॉल्ट आरंभिक मान है।

आजीवन − ऑटो वैरिएबल का जीवनकाल उस ब्लॉक से बंधा होता है जिसमें इसे परिभाषित किया जाता है।

यहाँ C भाषा में स्वतः चर का एक उदाहरण दिया गया है,

उदाहरण

#include <stdio.h>
int main() {
   auto int a = 28;
   int b = 8;
   printf("The value of auto variable : %d\n", a);
   printf("The sun of auto variable & integer variable : %d", (a+b));
   return 0;
}

आउटपुट

The value of auto variable : 28
The sun of auto variable & integer variable : 36

बाहरी

बाहरी चर को वैश्विक चर के रूप में भी जाना जाता है। ये चर फ़ंक्शन के बाहर परिभाषित किए गए हैं। ये वेरिएबल पूरे फंक्शन एक्जीक्यूशन के दौरान विश्व स्तर पर उपलब्ध हैं। वैश्विक चर के मान को फ़ंक्शंस द्वारा संशोधित किया जा सकता है।

दायरा - वे किसी भी कार्य से बंधे नहीं हैं। वे कार्यक्रम में हर जगह हैं यानी वैश्विक।

डिफ़ॉल्ट मान − वैश्विक चर के डिफ़ॉल्ट प्रारंभिक मान शून्य हैं।

आजीवन − कार्यक्रम के निष्पादन के अंत तक।

सी भाषा में बाहरी चर का एक उदाहरण यहां दिया गया है,

उदाहरण

#include <stdio.h>
extern int x = 32;
int b = 8;
int main() {
   auto int a = 28;
   extern int b;
   printf("The value of auto variable : %d\n", a);
   printf("The value of extern variables x and b : %d,%d\n",x,b);
   x = 15;
   printf("The value of modified extern variable x : %d\n",x);
   return 0;
}

आउटपुट

The value of auto variable : 28
The value of extern variables x and b : 32,8
The value of modified extern variable x : 15

स्थिर

स्टेटिक वेरिएबल्स को केवल एक बार इनिशियलाइज़ किया जाता है। कंपाइलर प्रोग्राम के अंत तक वेरिएबल को बनाए रखता है। स्टैटिक वैरिएबल को फंक्शन के अंदर या बाहर परिभाषित किया जा सकता है।

दायरा - वे ब्लॉक के लिए स्थानीय हैं।

डिफ़ॉल्ट मान − डिफ़ॉल्ट आरंभिक मान शून्य है।

आजीवन − कार्यक्रम के निष्पादन के अंत तक।

यहाँ C भाषा में स्थिर चर का एक उदाहरण दिया गया है,

उदाहरण

#include <stdio.h>
int main() {
   auto int a = -28;
   static int b = 8;
   printf("The value of auto variable : %d\n", a);
   printf("The value of static variable b : %d\n",b);
   if(a!=0)
   printf("The sum of static variable and auto variable : %d\n",(b+a));
   return 0;
}

आउटपुट

The value of auto variable : -28
The value of static variable b : 8
The sum of static variable and auto variable : -20

पंजीकरण करें

रजिस्टर वेरिएबल्स कंपाइलर को मेमोरी के बजाय सीपीयू रजिस्टर में वेरिएबल को स्टोर करने के लिए कहते हैं। अक्सर उपयोग किए जाने वाले चर रजिस्टरों में रखे जाते हैं और उनकी तेजी से पहुंच होती है। हम इन चरों के पते कभी प्राप्त नहीं कर सकते।

दायरा - वे समारोह के लिए स्थानीय हैं।

डिफ़ॉल्ट मान − डिफॉल्ट इनिशियलाइज़्ड वैल्यू गारबेज वैल्यू है..

आजीवन − जिस ब्लॉक में इसे परिभाषित किया गया है, उसके निष्पादन के अंत तक।

यहाँ C भाषा में रजिस्टर चर का एक उदाहरण दिया गया है,

उदाहरण

#include <stdio.h>
int main() {
   register char x = 'S';
   register int a = 10;
   auto int b = 8;
   printf("The value of register variable b : %c\n",x);
   printf("The sum of auto and register variable : %d",(a+b));
   return 0;
}

आउटपुट

The value of register variable b : S
The sum of auto and register variable : 18

  1. जावास्क्रिप्ट चर के लिए एक HTML H1 मान प्राप्त करना?

    H1 का मान JavaScript वेरिएबल में प्राप्त करने के लिए, आप उपयोग कर सकते हैं - document.getElementById().innerHTML. मान लें कि निम्नलिखित हमारा H1 शीर्षक है - <h1 id="demo"> This is the demo program of JavaScript ........</h1> अब, नीचे दिए गए कोड का उपयोग करके H1 मान प्राप्त कर

  1. जाँच कर रहा है कि HTML5 स्थानीय संग्रहण में कोई कुंजी मौजूद है या नहीं

    getitem(key) एक पैरामीटर के लिए मान लेता है और कुंजी से जुड़ा मान लौटाता है। दी गई कुंजी वस्तु से जुड़ी सूची में मौजूद है। if(localStorage.getItem("user")===null) {    //... } लेकिन अगर सूची में कुंजी मौजूद नहीं है तो यह नीचे दिए गए कोड का उपयोग करके शून्य मान पास कर देता है आप

  1. एचटीएमएल डोम स्टोरेज सेटइटम () विधि

    HTML DOM स्टोरेज सेटआइटम () विधि का उपयोग किसी दिए गए कुंजी नाम को पास करके स्टोरेज ऑब्जेक्ट आइटम को हटाने के लिए किया जाता है। सिंटैक्स स्टोरेज रिमूवल () मेथड का सिंटैक्स निम्नलिखित है - localStorage.removeItem(keyname,value); या sessionStorage.removeItem(keyname,value ); यहाँ, keyname प्रकार s