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

C++ में असाइनमेंट ऑपरेटर्स


असाइनमेंट ऑपरेटर्स बाएं ऑपरेंड द्वारा नामित ऑब्जेक्ट में एक मान स्टोर करते हैं। दो प्रकार के असाइनमेंट ऑपरेशन्स होते हैं: सिंपल असाइनमेंट, जिसमें दूसरे ऑपरेंड का मान पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में स्टोर किया जाता है, और कंपाउंड असाइनमेंट, जिसमें परिणाम स्टोर करने से पहले एक अंकगणितीय, शिफ्ट, या बिटवाइज ऑपरेशन किया जाता है।

उदाहरण

सिंपल असाइनमेंट ऑपरेटर उदाहरण:

#include<iostream>
using namespace std;
int main() {
    int i;
    i = 10;  // सिंपल असाइनमेंट
    cout << i;
    return 0;
}

आउटपुट

इससे निम्न आउटपुट मिलेगा:

10

कंपाउंड असाइनमेंट ऑपरेटर्स को e1 op= e2 के रूप में निर्दिष्ट किया जाता है, जहां e1 एक संशोधन योग्य l-value है जो const प्रकार का नहीं है और e2 निम्नलिखित में से एक है:

  • एक अंकगणितीय प्रकार
  • एक पॉइंटर, यदि op + या - है

e1 op= e2 फॉर्म e1 = e1 op e2 के रूप में व्यवहार करता है, लेकिन e1 का मूल्यांकन केवल एक बार किया जाता है। C++ में निम्नलिखित कंपाउंड असाइनमेंट ऑपरेटर्स हैं:

ऑपरेटर्स विवरण
*= पहले ऑपरेंड के मान को दूसरे ऑपरेंड के मान से गुणा करें; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में स्टोर करें।
/= पहले ऑपरेंड के मान को दूसरे ऑपरेंड के मान से विभाजित करें; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में स्टोर करें।
%= पहले ऑपरेंड का मॉड्यूलस लें जो दूसरे ऑपरेंड के मान द्वारा निर्दिष्ट है; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में स्टोर करें।
+= दूसरे ऑपरेंड के मान को पहले ऑपरेंड के मान में जोड़ें; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में स्टोर करें।
-= दूसरे ऑपरेंड के मान को पहले ऑपरेंड के मान से घटाएं; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में स्टोर करें।
<<= पहले ऑपरेंड के मान को बाएं शिफ्ट करें दूसरे ऑपरेंड के मान द्वारा निर्दिष्ट बिट्स की संख्या से; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में स्टोर करें।
>>= पहले ऑपरेंड के मान को दाएं शिफ्ट करें दूसरे ऑपरेंड के मान द्वारा निर्दिष्ट बिट्स की संख्या से; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में स्टोर करें।
&= पहले और दूसरे ऑपरेंड्स का बिटवाइज AND प्राप्त करें; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में स्टोर करें।
^= पहले और दूसरे ऑपरेंड्स का बिटवाइज एक्सक्लूसिव OR प्राप्त करें; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में स्टोर करें।
|= पहले और दूसरे ऑपरेंड्स का बिटवाइज इन्क्लूसिव OR प्राप्त करें; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में स्टोर करें।

उदाहरण

आइए इनमें से कुछ ऑपरेटर्स का उपयोग करके एक उदाहरण देखें:

#include<iostream>
using namespace std;
int main() {
    int a = 3, b = 2;
    a += b;
    cout << a << endl;
    a -= b;
    cout << a << endl;
    a *= b;
    cout << a << endl;
    a /= b;
    cout << a << endl;
    return 0;
}

यह निम्न आउटपुट देगा:

5
3
6
3

ध्यान दें कि एन्यूमरेटेड टाइप पर कंपाउंड असाइनमेंट एक एरर मैसेज उत्पन्न करता है। यदि बायां ऑपरेंड पॉइंटर प्रकार का है, तो दायां ऑपरेंड पॉइंटर प्रकार का होना चाहिए या यह एक कॉन्स्टेंट एक्सप्रेशन होना चाहिए जो 0 का मूल्यांकन करता है। यदि बायां ऑपरेंड इंटीग्रल प्रकार का है, तो दायां ऑपरेंड पॉइंटर प्रकार का नहीं होना चाहिए।

  1. - C++ में रिलेशनल ऑपरेटर्स

    C++ प्रोग्रामिंग में, दो वेरिएबल्स में संग्रहीत मानों की तुलना निम्नलिखित ऑपरेटर्स का उपयोग करके की जा सकती है और उनके बीच के संबंध को निर्धारित किया जा सकता है। इन ऑपरेटर्स को रिलेशनल ऑपरेटर्स कहा जाता है। C++ में उपलब्ध विभिन्न रिलेशनल ऑपरेटर्स हैं: ऑपरेटर विवरण > से बड़ा >= से बड़

  1. - C++ में अंकगणितीय ऑपरेटर्स

    C++ में 5 बुनियादी अंकगणितीय ऑपरेटर्स होते हैं। वे हैं: जोड़ (+) घटाव (-) भाग (/) गुणा (*) मॉड्यूलो (%) उदाहरण ये ऑपरेटर्स C++ में किसी भी अंकगणितीय संक्रिया पर कार्य कर सकते हैं। आइए एक उदाहरण देखते हैं: #include <iostream> using namespace std; int main() { int a = 21; int b = 10;

  1. - Python में विभिन्न असाइनमेंट ऑपरेटर्स के प्रकार क्या हैं?

    निम्न तालिका सभी असाइनमेंट ऑपरेटर्स को दर्शाती है: ऑपरेटर विवरण उदाहरण = दाएं ऑपरेंड के मान को बाएं ऑपरेंड को असाइन करता है c = a + b, a + b का मान c में += दाएं ऑपरेंड को बाएं ऑपरेंड में जोड़ता है और परिणाम को बाएं ऑपरेंड को असाइन करता है c += a, a को c में जोड़ें -= दाएं ऑपरेंड को बाएं