एक दायरा कार्यक्रम का एक क्षेत्र है और मोटे तौर पर तीन स्थान हैं, जहां चर घोषित किए जा सकते हैं -
- किसी फ़ंक्शन या ब्लॉक के अंदर जिसे स्थानीय चर कहा जाता है,
- फ़ंक्शन पैरामीटर की परिभाषा में जिसे औपचारिक पैरामीटर कहा जाता है।
- सभी फंक्शन के बाहर जिन्हें ग्लोबल वेरिएबल कहा जाता है।
स्थानीय चर का उपयोग केवल उन कथनों द्वारा किया जा सकता है जो उस फ़ंक्शन या कोड के ब्लॉक के अंदर हैं। स्थानीय चर अपने आप कार्य करने के लिए ज्ञात नहीं हैं।
उदाहरण
#include <iostream> using namespace std; int main () { // Local variable declaration: int a, b; int c; // actual initialization a = 10; b = 20; c = a + b; cout << c; return 0; }
आउटपुट
यह आउटपुट देगा -
30
वैश्विक चर सभी कार्यों के बाहर परिभाषित किए जाते हैं, आमतौर पर कार्यक्रम के शीर्ष पर। वैश्विक चर आपके कार्यक्रम के पूरे जीवनकाल में अपना मूल्य रखेंगे। किसी भी फ़ंक्शन द्वारा एक वैश्विक चर का उपयोग किया जा सकता है।
उदाहरण
#include <iostream> using namespace std; // Global variable declaration: int g; int main () { // Local variable declaration: int a, b; // actual initialization a = 10; b = 20; g = a + b; cout << g; return 0; }
आउटपुट
यह आउटपुट देगा -
30
एक प्रोग्राम में स्थानीय और वैश्विक चरों के लिए एक ही नाम हो सकता है लेकिन किसी फ़ंक्शन के अंदर एक स्थानीय चर का मान वरीयता लेगा। वैश्विक चर को एक ही रैम के साथ एक्सेस करने के लिए, आपको स्कोप रेज़ोल्यूशन ऑपरेटर का उपयोग करना होगा।
उदाहरण
#include <iostream> using namespace std; // Global variable declaration: int g = 20; int main () { // Local variable declaration: int g = 10; cout << g; // Local cout << ::g; // Global return 0; }
आउटपुट
यह आउटपुट देगा -
10 20