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

C/C++ में स्विच स्टेटमेंट में वेरिएबल्स घोषित क्यों नहीं कर सकते?


स्विच स्टेटमेंट में वेरिएबल्स घोषित किए जा सकते हैं। आपको बस उन्हें स्विच स्टेटमेंट में एक नए स्कोप के भीतर घोषित और उपयोग करने की आवश्यकता है। उदाहरण के लिए:

उदाहरण

#include<iostream> using namespace std; int main() {    int i = 10;    switch(i) {       case 2:       //some code       break;       case 10:{          int x = 13;          cout << x;       }    }    return 0; }

आउटपुट

यह आउटपुट देगा:

13

यदि आप वेरिएबल को खुले में घोषित करने का प्रयास करते हैं तो आपको त्रुटि मिल सकती है क्योंकि केस लेबल पर जंप करना goto का उपयोग करने के समान है, इसलिए आपको उसी स्कोप में लोकल वेरिएबल घोषणा के ऊपर से जंप करने की अनुमति नहीं है और उस स्कोप में आगे कहीं इसका उपयोग कर सकते हैं।


  1. - C/C++ में ग्लोबल वेरिएबल्स का उपयोग क्यों नहीं करना चाहिए?

    हमें किसी भी भाषा में ग्लोबल वेरिएबल्स का उपयोग करने से बचना चाहिए, न केवल C++ में। ऐसा इसलिए है क्योंकि ये वेरिएबल्स ग्लोबल नेमस्पेस को प्रदूषित करते हैं, बड़े प्रोजेक्ट्स में बहुत खराब बग्स पैदा कर सकते हैं क्योंकि उन्हें किसी भी फाइल से एक्सेस किया जा सकता है और इसलिए कहीं से भी मॉडिफाई किया जा

  1. - क्या C/C++ में लोकल वेरिएबल की मेमोरी को उसके स्कोप के बाहर एक्सेस किया जा सकता है?

    आइए एक ऐसा उदाहरण देखते हैं जहां आप संभवतः किसी लोकल वेरिएबल की मेमोरी को उसके स्कोप के बाहर एक्सेस कर सकते हैं। उदाहरण #include <iostream> int* foo() { int x = 3; return &x; } int main() { int* address = foo(); cout << *address; *address = 12; cout <<

  1. - C++ में वेरिएबल्स का स्कोप

    स्कोप प्रोग्राम का एक क्षेत्र है और मोटे तौर पर कहें तो तीन स्थान हैं जहां वेरिएबल्स घोषित किए जा सकते हैं – एक फंक्शन या ब्लॉक के अंदर जिसे लोकल वेरिएबल्स कहा जाता है, फंक्शन पैरामीटर्स की परिभाषा में जिसे फॉर्मल पैरामीटर्स कहा जाता है। सभी फंक्शन्स के बाहर जिसे ग्लोबल वेरिएबल्स कहा जाता है। लोक