Storage Class in C Language

Storage Class in C: जब कोई Variable मान प्राप्त करता है तो वह मान Memory में Store होता है। “C” में Variable की Value Store होने की दो Locations हो सकती हैं:

  1. Main Memory
  2. C. P. U. Resister

Variable के मान को हम हमारी जरूरत के अनुसार इन दोनों में से किसी भी मनचाही जगह पर रख सकते हैं। Variable के मान को Memory में अलग-अलग जगह Store करने की Locations को ही “C” की Storage Class कहते हैं। “C” Language में मुख्‍य रूप से चार Storage Class हैं।

प्रोग्राम के Variable का जो भाग वास्तव में Active रूप से प्रोग्राम में Use हो रहा होता है, उसे Variable का Scope कहा जाता है और किसी Variable में Store मान कब तक Accessible रहेगा इसे Variable की Longevity कहते हैं। Variable को भी हम तीन भागों में बांट सकते हैं। ये भाग Variable के Declaration पर निर्भर करते हैं।

 

Type of Variables In Program

किसी प्रोग्राम में Variables को मुख्‍यत: तीन प्रकार से Declare किया जा सकता है और इन तीनों प्रकार के Variables का अपना अलग प्रकार का काम होता है।

Internal or Local or Private Variables

वे Variables जो किसी भी Function के Statement Block में अंदर (यानी मंझले कोष्‍ठक के अन्दर) Declare किये जाते हैं, Local Variables कहलाते हैं। ये जिस Function में उपयोग के लिए Declare किये जाते हैं, उस Function का काम पूरा होते ही या Program Control के उस Function के Statements का Execution करके Statement Block से बाहर निकलते ही, ये Variables व इनके मान नष्‍ट हो जाते हैं। इन Variables का मान किसी भी प्रकार से किसी अन्‍य Function को असर नहीं पहुंचाता है। अभी तक हमने जितने भी प्रोग्राम बनाए है, उन सभी में Local Variables का प्रयोग किया गया है।

Formal Variables

जब Calling Function से कोई मान किसी User Defined Function में Pass किया जाता है, तो वह Actual Argument के रूप में User Defined Function को Variable का वास्तविक मान भेजता है। User Defined Function में Calling Function से आने वाले मान को Receive करने के लिए जिन Variables को Define किया जाता है, वे Variables, Formal Variables कहलाते हैं। क्योंकि ये केवल औपचारिक Variables होते हैं, जिनमें Calling Function से मान आता है। Formal Variables किसी भी Function के Statement Block से (यानी मंझले कोष्‍ठक से पहले) बाहर की तरफ Declare किये जाते हैं।

External or Global or Public Variables

इस प्रकार के Variables main() Function के Statement Block से बाहर Declare किये जाते हैं। इस प्रकार के Variables की विशेषता ये होती है, कि इस प्रकार के Variables को प्रोग्राम में कोई भी Function या User Defined Function Use कर सकता है। इन्हे एक बार ही Define व Declare किया जाता है और फिर इन्हे कहीं भी प्रयोग में लाया जा सकता है। इन्हे वापस Declare करने की जरूरत नहीं रहती है। जैसे निम्न प्रोग्राम देखें-

// Program
#include<stdio.h>
int x = 6, y = 8, z = 4;
main()
{
	int b, c ;
	c = x + y;
	printf("\n C is %d ", c);
	b = y – z;
	printf("\n B is %d ", b);
	mul(b);
	getch();
}

mul(int l)
{
	int m;
	m = l * y;
	printf("\n Multiplication of B and Y is %d ", m);
} 

// Output
   C is 14
   B is 4
   Multiplication of B and Y is 32

आइये, समझते हैं कि ये Output किस प्रकार प्राप्त हुआ। जैसा कि हमने पहले कहा कि Global Variables का उपयोग कोई भी Function कर सकता है, इसलिए यहां c = x + y;  Expression से Global Variable x का मान 6 व Global Variable y का मान 8 जुड कर Local Variable c को 14 प्राप्त हो गया है। इसी प्रकार b = y – z; से Global Variable y के मान 8 में से Global Variable z का मान 4 घट कर, प्राप्त मान Local Variable b को प्राप्त हो गया है। इस प्रकार b का मान Output में 4 print हुआ है।

ध्‍यान दें कि इस प्रोग्राम में mul नाम के User Defined Function को केवल एक ही मान (Local Variable b) को Actual Argument के रूप में भेजा गया है और इसके Formal Variable को Prototype के रूप में int प्रकार का Declare किया गया है। mul, User Defined Function में एक Local Variable m Declare किया गया है।

यहां Global Variable y के मान को Declare नहीं किया गया है बल्कि सीधे ही mul Function में उपयोग में ले लिया गया है। इस प्रकार Global Variable को प्रोग्राम में केवल एक ही बार Declare करना होता है, फिर Global Variable के मान को Program में कहीं भी Use किया जा सकता है।

Buy this eBook for Complete Discussion about

Automatic Storage Class in C

Extern Storage Class in C

Static Storage Class in C

Register Storage Class in C

C Programming Language in Hindi - BccFalna.com ये Article इस वेबसाईट पर Selling हेतु उपलब्‍ध EBook  C Programming Language in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी। 

C Programming Language in Hindi | Page: 477 + 265 | Format: PDF

BUY NOW GET DEMO REVIEWS