C++ में 5 बुनियादी अंकगणितीय ऑपरेटर्स होते हैं। वे हैं:
- जोड़ (+)
- घटाव (-)
- भाग (/)
- गुणा (*)
- मॉड्यूलो (%)
उदाहरण
ये ऑपरेटर्स C++ में किसी भी अंकगणितीय संक्रिया पर कार्य कर सकते हैं। आइए एक उदाहरण देखते हैं:
#include <iostream>
using namespace std;
int main() {
int a = 21;
int b = 10;
int c;
c = a + b;
cout << "Line 1 - Value of c is :" << c << endl;
c = a - b;
cout << "Line 2 - Value of c is :" << c << endl;
c = a * b;
cout << "Line 3 - Value of c is :" << c << endl;
c = a / b;
cout << "Line 4 - Value of c is :" << c << endl;
c = a % b;
cout << "Line 5 - Value of c is :" << c << endl;
return 0;
}
आउटपुट
Line 1 - Value of c is :31 Line 2 - Value of c is :11 Line 3 - Value of c is :210 Line 4 - Value of c is :2 Line 5 - Value of c is :1
C++ में कुछ संयुक्त अंकगणितीय ऑपरेटर्स भी उपलब्ध हैं। संयुक्त अंकगणितीय असाइनमेंट ऑपरेटर्स को e1 op= e2 के रूप में निर्दिष्ट किया जाता है, जहां e1 एक संशोधनीय l-value है जो const प्रकार का नहीं है और e2 निम्न में से एक है:
- एक अंकगणितीय प्रकार
- एक पॉइंटर, यदि op + या - है
e1 op= e2 रूप e1 = e1 op e2 जैसा व्यवहार करता है, लेकिन e1 का मूल्यांकन केवल एक बार होता है।
C++ में निम्नलिखित संयुक्त अंकगणितीय असाइनमेंट ऑपरेटर्स हैं:
| ऑपरेटर्स | विवरण |
|---|---|
| *= | पहले ऑपरेंड के मान को दूसरे ऑपरेंड के मान से गुणा करें; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में संग्रहीत करें। |
| /= | पहले ऑपरेंड के मान को दूसरे ऑपरेंड के मान से विभाजित करें; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में संग्रहीत करें। |
| %= | पहले ऑपरेंड का मॉड्यूलस लें जिसे दूसरे ऑपरेंड के मान द्वारा निर्दिष्ट किया गया है; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में संग्रहीत करें। |
| += | दूसरे ऑपरेंड के मान को पहले ऑपरेंड के मान में जोड़ें; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में संग्रहीत करें। |
| -= | दूसरे ऑपरेंड के मान को पहले ऑपरेंड के मान से घटाएं; परिणाम को पहले ऑपरेंड द्वारा निर्दिष्ट ऑब्जेक्ट में संग्रहीत करें। |
आइए इनमें से कुछ ऑपरेटर्स का उपयोग करके एक उदाहरण देखते हैं:
#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 का मूल्यांकन करती हो। यदि बायां ऑपरेंड इंटीग्रल प्रकार का है, तो दायां ऑपरेंड पॉइंटर प्रकार का नहीं होना चाहिए।