असाइनमेंट ऑपरेटर बाएं ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में एक मान संग्रहीत करता है। दो प्रकार के असाइनमेंट ऑपरेशंस हैं:साधारण असाइनमेंट, जिसमें दूसरे ऑपरेंड का मान पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में संग्रहीत किया जाता है, और कंपाउंड असाइनमेंट, जिसमें एक अंकगणित, शिफ्ट, या बिटवाइज़ ऑपरेशन को स्टोर करने से पहले किया जाता है। परिणाम।
उदाहरण
सरल असाइनमेंट ऑपरेटर उदाहरण -
#include<iostream> using namespace std; int main() { int i; i = 10; // Simple Assignment cout << i; return 0; }
आउटपुट
यह आउटपुट देगा -
10
यौगिक असाइनमेंट ऑपरेटरों को फॉर्म e1 op=e2 में निर्दिष्ट किया गया है, जहां e1 एक परिवर्तनीय l-मान है जो const प्रकार का नहीं है और e2 निम्न में से एक है -
- एक अंकगणितीय प्रकार
- एक सूचक, यदि op + या – है
e1 op=e2 प्रपत्र e1 =e1 op e2 के रूप में व्यवहार करता है, लेकिन e1 का मूल्यांकन केवल एक बार किया जाता है।
C++ में कंपाउंड असाइनमेंट ऑपरेटर निम्नलिखित हैं -
ऑपरेटर्स वें> <वें शैली ="चौड़ाई:82.8265%; पाठ-संरेखण:केंद्र;">विवरण वें> | |
---|---|
*= | पहले ऑपरेंड के मान को दूसरे ऑपरेंड के मान से गुणा करें; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में संग्रहीत करें। |
/= | पहले ऑपरेंड के मान को दूसरे ऑपरेंड के मान से विभाजित करें; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में संग्रहीत करें। |
%= | दूसरे ऑपरेंड के मान द्वारा निर्दिष्ट पहले ऑपरेंड का मापांक लें; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में संग्रहीत करें। |
+= | दूसरे ऑपरेंड के मान को पहले ऑपरेंड के मान में जोड़ें; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में संग्रहीत करें। |
–= | दूसरे ऑपरेंड के मान को पहले ऑपरेंड के मान से घटाएं; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में संग्रहीत करें। |
<<= | पहले ऑपरेंड के मान को शिफ्ट करें, दूसरे ऑपरेंड के मान द्वारा निर्दिष्ट बिट्स की संख्या छोड़ दें; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में संग्रहीत करें। |
>>= | पहले ऑपरेंड के मान को दूसरे ऑपरेंड के मान द्वारा निर्दिष्ट बिट्स की संख्या के दाईं ओर शिफ्ट करें; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में संग्रहीत करें। |
&= | पहले और दूसरे ऑपरेंड के बिटवाइज़ और प्राप्त करें; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में संग्रहीत करें। |
^= | बिटवाइज एक्सक्लूसिव 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 का मूल्यांकन करता है। यदि बायां संकार्य एक अभिन्न प्रकार का है, तो दायां संकार्य एक सूचक का नहीं होना चाहिए टाइप करें।