आउटपुट

mauqya.sai:5:5: OauTi: paaa cyaa paMjaikNta cala ?A? vainaMtaiRkelai
laiha("%u",&A);
^~~~~~

बाह्य

बाह्य स्टोरेज क्लास कंपाईलरला सांगण्यासाठी वापरला जातो की एक्सटर्न म्हणून परिभाषित केलेले व्हेरिएबल प्रोग्राममध्ये इतरत्र बाह्य जोडणीसह घोषित केले जाते. बाह्य म्हणून घोषित केलेल्या व्हेरिएबल्सला कोणतीही मेमरी वाटप केली जात नाही. हे केवळ घोषणा आहे आणि प्रोग्राममध्ये व्हेरिएबल इतरत्र घोषित केले आहे हे निर्दिष्ट करण्याचा हेतू आहे. बाह्य अविभाज्य प्रकाराचे डीफॉल्ट प्रारंभिक मूल्य 0 अन्यथा शून्य आहे. आम्ही केवळ बाह्य व्हेरिएबलला जागतिक स्तरावर आरंभ करू शकतो, म्हणजेच, आम्ही कोणत्याही ब्लॉक किंवा पद्धतीमध्ये बाह्य चल आरंभ करू शकत नाही. बाह्य व्हेरिएबल बर्‍याच वेळा घोषित केले जाऊ शकते परंतु केवळ एकदाच आरंभ केले जाऊ शकते. जर एखादा व्हेरिएबल बाह्य म्हणून घोषित केला असेल तर कंपाईलर त्या व्हेरिएबलचा शोध घेतो जो प्रोग्राममध्ये कुठेतरी प्रारंभ केला जाऊ शकतो जो बाह्य किंवा स्थिर असू शकतो. जर ते नसेल तर कंपाईलर एक त्रुटी दर्शवेल.

उदाहरण

#vaapara <PsaTidiAayaAae.Pca>
paunaZ mauqya()
{
baaherila paunaZ A;
laiha("%paunaZ",A);
}

आउटपुट

mauqya.sai:(.majakur+06): ApariBaaSaita saMDBaZ Tu A'
saMklanaR2: OauTi: Pladi partaRAalae 1 baMDkra sYaitai

आउटपुट

उदाहरण

#vaapara <PsaTidiAayaAae.Pca>
paunaZ A;
paunaZ mauqya()
{
baaherila paunaZ A; // cala A Aahe pariBaaSaita jaagataikRstaravar, D maemari vaila naahi baiEZ vaaTpaRkelae Tu A
laiha("%paunaZ",A);
}

आउटपुट

0

उदाहरण

#vaapara <PsaTidiAayaAae.Pca>
paunaZ A;
paunaZ mauqya()
{
baaherila paunaZ A = 0; // he vaila DSaZvaa A kMpaaEZlar OauTi taevhapaasauna Aamhi krfRSaktaa naahi vaapar baaherila Aanai AarMBaik var samaana vaeQ
laiha("%paunaZ",A);
}

आउटपुट

saMklana vaeQ OauTi
mauqya.sai: maoyae kayaZ ?mauqya?:
mauqya.sai:5:16: OauTi: ?A? Aahe Daenhi ?baaherila? Aanai AarMBaik
baaherila paunaZ A = 0;

उदाहरण

#vaapara <PsaTidiAayaAae.Pca>
paunaZ mauqya()
{
baaherila paunaZ A; // kMpaaEZlar vaila Saaeoa yaeYae jaeMvh A cala A pariBaaSaita Aanai AarMBaik kuVetari maoyae D paaegazama kiMvaa naahi.
laiha("%paunaZ",A);
}
paunaZ A = 20;

आउटपुट

20

उदाहरण

baaherila paunaZ A;
paunaZ A = 10;
#vaapara <PsaTidiAayaAae.Pca>
paunaZ mauqya()
{
laiha("%paunaZ",A);
}
paunaZ A = 20; // kMpaaEZlar vaila DSaZvaa Pk OauTi var he AaeQ

आउटपुट

saMklana vaeQ OauTi

सी मधील स्टोरेज क्लासेस (ऑटो, एक्सटर्न, स्टॅटिक, रजिस्टर)

सी मधील स्टोरेज क्लासेसचा वापर आजीवन, दृश्यमानता, मेमरी स्थान आणि व्हेरिएबलचे प्रारंभिक मूल्य निश्चित करण्यासाठी केला जातो. सी मध्ये चार प्रकारचे स्टोरेज वर्ग आहेत स्वयंचलित बाह्य स्थिर नोंदणी करा

स्टोरेज क्लासेस स्टोरेज प्लेस डीफॉल्ट मूल्य स्कोप लाइफटाइम फंक्शनमध्ये ऑटो रॅम कचरा मूल्य स्थानिक मुख्य कार्यक्रमाच्या समाप्तीपर्यंत एक्सटर्न रॅम झिरो ग्लोबल कदाचित प्रोग्राममध्ये कोठेही घोषित केले जाईल मुख्य प्रोग्रामच्या समाप्तीपर्यंत स्थिर रॅम शून्य स्थानिक, एकाधिक फंक्शन्स कॉल दरम्यान मूल्य टिकवून ठेवते फंक्शनमध्ये कचरा मूल्य स्थानिक नोंदणी करा

स्वयंचलित

स्वयंचलित व्हेरिएबल्सला रनटाइमवर स्वयंचलितपणे मेमरी वाटप केली जाते. स्वयंचलित व्हेरिएबल्सची दृश्यमानता ज्या ब्लॉकमध्ये परिभाषित केली गेली आहे त्यापुरते मर्यादित आहे. स्वयंचलित व्हेरिएबल्सची व्याप्ती ज्या ब्लॉकमध्ये परिभाषित केली गेली आहे त्यापर्यंत मर्यादित आहे. स्वयंचलित व्हेरिएबल्स डीफॉल्टनुसार कचर्‍यासाठी आरंभ केले जातात. स्वयंचलित व्हेरिएबल्सला नियुक्त केलेली मेमरी ब्लॉकमधून बाहेर पडल्यावर मुक्त होते. स्वयंचलित व्हेरिएबल्स परिभाषित करण्यासाठी वापरलेला कीवर्ड ऑटो आहे. प्रत्येक स्थानिक व्हेरिएबल डी डीफॉल्टनुसार स्वयंचलित आहे.

उदाहरण

#vaapara <PsaTidiAayaAae.Pca>
paunaZ mauqya()
{
paunaZ A; //svayaM
Axar bai;
ApaunaZ sai;
laiha("%paunaZ %Axar %ApaunaZ",A,bai,sai); // mauna pzaarMBaik dipaflT maulya cyaa svayaMcalaita vheriPbalsa A, bai, Aanai sai.
vaapasakra 0;
}

आउटपुट

kcara kcara kcara

उदाहरण

#vaapara <PsaTidiAayaAae.Pca>
paunaZ mauqya()
{
paunaZ A = 10,mai;
laiha("%paunaZ ",++A);
{
paunaZ A = 20;
jaeMvh (mai=0;mai<3;mai++)
{
laiha("%paunaZ ",A); // 20 vaila baiEZ mauita 3 vaeQa taevhapaasauna tae Aahe D sYaanaik maulya cyaa A
}
}
laiha("%paunaZ ",A); // 11 vaila baiEZ mauita taevhapaasauna D vyaaptai cyaa A = 20 Aahe samaapta.
}

आउटपुट

11 20 20 20 11

स्थिर

स्थिर निर्दिष्ट म्हणून परिभाषित केलेले व्हेरिएबल्स एकाधिक फंक्शन कॉल दरम्यान त्यांचे मूल्य ठेवू शकतात. स्थिर स्थानिक व्हेरिएबल्स केवळ फंक्शन किंवा त्या ब्लॉकमध्ये ज्या परिभाषित केल्या आहेत त्या दृश्यमान आहेत. समान स्थिर व्हेरिएबल बर्‍याच वेळा घोषित केले जाऊ शकते परंतु केवळ एका वेळी नियुक्त केले जाऊ शकते. स्थिर अविभाज्य व्हेरिएबलचे डीफॉल्ट प्रारंभिक मूल्य 0 अन्यथा शून्य आहे. स्थिर ग्लोबल व्हेरिएबलची दृश्यमानता ज्या फाईलमध्ये त्याने घोषित केली आहे त्या फाईलपुरते मर्यादित आहे. स्थिर व्हेरिएबल परिभाषित करण्यासाठी वापरलेला कीवर्ड स्थिर आहे.

उदाहरण

#vaapara<PsaTidiAayaAae.Pca>
sYaayai Axar sai;
sYaayai paunaZ mai;
sYaayai ApaunaZ Ppaf;
sYaayai Axar Psa[100];
qaalai mauqya ()
{
laiha("%paunaZ %paunaZ %ApaunaZ %SabD",sai,mai,Ppaf); // D pzaarMBaik dipaflT maulya cyaa sai, mai, Aanai Ppaf vaila baiEZ mauita.
}

आउटपुट

0 0 0.000000 (Saunya)

उदाहरण

#vaapara<PsaTidiAayaAae.Pca>
qaalai baerija()
{
sYaayai paunaZ A = 10;
sYaayai paunaZ bai = 24;
laiha("%paunaZ %paunaZ \n",A,bai);
A++;
bai++;
}
qaalai mauqya()
{
paunaZ mai;
jaeMvh(mai = 0; mai< 3; mai++)
{
baerija(); // D sYaayai vheriPbalsa haeld tyaaMcae maulya Drmyaana Pkaoaik kayaZ kla.
}
}

आउटपुट

10 24
11 25
12 26

नोंदणी करा

रजिस्टर म्हणून परिभाषित केलेल्या व्हेरिएबल्सला सीपीयूमध्ये उर्वरित मेमरीच्या आकारानुसार सीपीयू रजिस्टरमध्ये मेमरीचे वाटप केले जाते. आम्ही रजिस्टर व्हेरिएबल्सचे वर्णन करू शकत नाही, म्हणजेच आम्ही रजिस्टर व्हेरिएबलसाठी आणि ऑपरेटर वापरू शकत नाही. रजिस्टर व्हेरिएबल्सचा प्रवेश वेळ स्वयंचलित व्हेरिएबल्सपेक्षा वेगवान आहे. रजिस्टर स्थानिक व्हेरिएबल्सचे प्रारंभिक डीफॉल्ट मूल्य 0 आहे. रजिस्टर कीवर्ड व्हेरिएबलसाठी वापरला जातो जो सीपीयू रजिस्टरमध्ये संग्रहित केला जावा. तथापि, ही कंपाईलरची निवड आहे की नाही; व्हेरिएबल्स रजिस्टरमध्ये संग्रहित केले जाऊ शकतात. आम्ही पॉईंटर्स रजिस्टरमध्ये ठेवू शकतो, म्हणजेच, रजिस्टर व्हेरिएबलचा पत्ता संचयित करू शकतो. आम्ही समान व्हेरिएबलसाठी एकापेक्षा जास्त स्टोरेज निर्दिष्ट वापरू शकत नाही म्हणून स्टॅटिक व्हेरिएबल्स रजिस्टरमध्ये साठवले जाऊ शकत नाहीत.

उदाहरण

#vaapara <PsaTidiAayaAae.Pca>
paunaZ mauqya()
{
paMjaikNta paunaZ A; // cala A Aahe vaaTpaRkelae maemari maoyae D saipaiyau paMjaikNta. D pzaarMBaik dipaflT maulya cyaa A Aahe 0.
laiha("%paunaZ",A);
}

आउटपुट

0

उदाहरण

#vaapara <PsaTidiAayaAae.Pca>
paunaZ mauqya()
{
paMjaikNta paunaZ A = 0;
laiha("%u",&A); // he vaila La a A saMklana vaeQ OauTi taevhapaasauna Aamhi krfRSaktaa naahi pzavaeSa D paaa cyaa A paMjaikNta cala.
}

◀ मागील पुढील ▶