C++ में प्रत्येक वेरिएबल का एक विशिष्ट प्रकार होता है, जो वेरिएबल की मेमोरी के आकार और लेआउट को निर्धारित करता है; उस स्मृति में संग्रहीत किए जा सकने वाले मानों की श्रेणी; और संचालन का सेट जिसे चर पर लागू किया जा सकता है। हम संकेतन का उपयोग करके एक चर घोषित करते हैं -
type variableName;
प्रकार आदिम (इंट, बूल, फ्लोट, चार, आदि), एक एन्यूमरेटेड प्रकार, किसी अन्य प्रकार के लिए एक सूचक या डेटा संरचना या वर्ग द्वारा परिभाषित एक अधिक जटिल प्रकार हो सकता है।
वेरिएबल स्कोप
एक दायरा कार्यक्रम का एक क्षेत्र है और मोटे तौर पर तीन स्थान हैं, जहां चर घोषित किए जा सकते हैं -
- किसी फ़ंक्शन या ब्लॉक के अंदर जिसे स्थानीय चर कहा जाता है,
- फ़ंक्शन पैरामीटर की परिभाषा में जिसे औपचारिक पैरामीटर कहा जाता है।
- सभी कार्यों के बाहर जिन्हें वैश्विक चर कहा जाता है।
स्थानीय चर का उपयोग केवल उन कथनों द्वारा किया जा सकता है जो उस फ़ंक्शन या कोड के ब्लॉक के अंदर हैं। स्थानीय चर अपने आप कार्य करने के लिए ज्ञात नहीं हैं।
उदाहरण
#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