एक Operator एक symbol है जो specific mathematical या logical calculation करने के लिए value पर काम करता है। वे किसी भी Programming Language की foundation बनाते हैं। C ++ में, हमारे पास required functionalities प्रदान करने के लिए built-in operators हैं।
एक Operator, operends को operate करता है। उदाहरण के लिए,-
Assignment Operator :
Assignment operator एक variable के लिए value assign करता है।
x = 5;
यह statement, variable x को integer value 5 assign करता है। assignment operator हमेशा Right से Left move होता है, और इसके against कभी नहीं:
x = y;
यह statement, variable x को variable y में contained value प्रदान करता है। इस कथन के execution के समय x का value lost हो जाता है और इसे y के value से बदल दिया गया है।
हम केवल assignment operator के समय y से x का मान assign कर रहे हैं। इसलिए, यदि y बाद के क्षण में change है, तो यह x द्वारा लिए गए नए value को प्रभावित नहीं करेगा।
Arithmetic Operator :
The five arithmetical operations supported by C++ are:
operator description
- (+) addition
- (-) subtraction
- (*) multiplication
- (/) division
- (%) modulo
addition, subtraction, multiplication and division के operation literally से उनके संबंधित mathematical operators के correspond होती हैं। अंतिम एक, modulo operator, percentage symbol (%) द्वारा दर्शाया गया है, शेष दो values का एक विभाजन देता है। उदाहरण के लिए:
x = 11% 3;
variable x में value 2 आएगा , क्योंकि 11 को 3 से divide करने पर result 3 आता है, और remainder के रूप में 2आता है।
Compound assignment (+=, -=, *=, /=, %=, >>=, <<=, &=, ^=, |=) :
Compound, assignment operator एक variable के current value को उस पर एक operation करके modify करते हैं। वे किसी operation के result को पहले operands को assign करने के equal है।
expression equivalent to…
y += x; y = y + x;
x -= 5; x = x – 5;
x /= y; x = x / y;
price *= units + 1; price = price * (units+1);
Increment and decrement operator :
कुछ expression को और भी छोटा किया जा सकता है: increment operator (++) और decrement operator (–) एक variable में store value को increment या decrement करता है। वे क्रमशः +=1 और -=1 के equivalent हैं। इस प्रकार :
++x;
x+=1;
x=x+1;
Relational and comparison operators ( ==, !=, >, <, >=, <= ):
Comparison और relational operators का उपयोग करके दो expression की तुलना की जा सकती है। exampe के लिए, यह जानने के लिए कि क्या two values समान हैं या यदि एक दूसरे से बड़ा है।
इस तरह के ऑपरेशन का परिणाम या तो सही या गलत होता है (यानी, एक बूलियन मान)।
C++ में relational operators निम्नलिखित हैं:
operator description
== Equal to
!= Not equal to
< Less than
> Greater than
<= Less than or equal to
>= Greater than or equal to
EXAMPPLE :
Suppose that a=2, b=3 and c=6, then:
(a == 5) // evaluates to false, since a is not equal to 5
(a*b >= c) // evaluates to true, since (2*3 >= 6) is true
(b+4 > a*c) // evaluates to false, since (3+4 > 2*6) is false
((b=2) == a) // evaluates to true
Be careful! Assignment operator (opertor =, one equal sign के साथ) equality comparison operator (ऑपरेटर ==, two equal sign के साथ) के समान नहीं है; पहला वाला (=) right side के value को उसके left side के variable कोassign करता है, जबकि दूसरा (==) comparison करता है कि क्या statement के दोनों side के values equal हैं। इसलिए, last expression ((b=2) == a) में, हमने पहले value 2 को b को assignकिया और फिर हमने इसकी तुलना a से की (जो value 2 को भी store करता है), correct output देता है।
Logical Operator:
operator ! boolean opeartor NOT के लिए C++ में use होता है। इसके right side केवल एक operands होता है, और इसे invert देता है, यदि इसका operand, true है, और यदि इसका operand, false है, तो false return करता है। basically, यह अपने operands के evaluation के विपरीत boolean value return करता है। Example के लिए:
!(5 == 5) // evaluates to false because the expression at its right (5 == 5) is true
!(6 <= 4) // evaluates to true because (6 <= 4) would be false
!true // evaluates to false
!false // evaluates to true
Logical operators && और || single relational result प्राप्त करने के लिए दो expressions का evelaution करते समय उपयोग किया जाता है। ऑपरेटर && boolean logical operator AND से मेल खाता है, जो true returnहै यदि इसके दोनों operand true हैं, और अन्यथा false हैं।
&& OPERATOR (and)
a b a && b
true true true
true false false
false true false
false false false
|| OPERATOR (or):
a b a || b
true true true
true false true
false true true
false false false
Conditional ternary operator ( ? ):
Conditional operator एक expression का evaluate करता है, एक value return है यदि वह expression true का evaluate करती है, और एक अलग expression यदि expression false के रूप में evaluates करती है। इसका syntax है:
condition ? result 1: result 2
यदि condition सत्य है, तो complete expression result 1 का evaluate करती है, और अन्यथा result 2 का evaluates करती है।
Example
7==5 ? 4 : 3 // evaluates to 3, since 7 is not equal to 5.
Comma Operator :
Comma operator (,) का उपयोग दो या दो से अधिक expressions को अलग करने के लिए किया जाता है, जो कि केवल एक expression की expected की जाती है। जब किसी value के लिए set of expressions को evaluates करना होता है, तो केवल right side के expressions पर विचार किया जाता है।
For example, the following code:
a = (b=3, b+2);
पहले b को 3 assign करेगा, और फिर b+2 को variable a को assign करेगा। इसलिए, अंत में, variable a में 5 होगा जबकि variable b में 3 होगा।
Bitwise operators ( &, |, ^, ~, <<, >> ):
Bitwise operator उन bit pattern पर विचार करते हुए variables को modify करते हैं जो उनके द्वारा store किए गए values को represent करते हैं।
operator asm equivalent description
& AND Bitwise AND
| OR Bitwise inclusive OR
^ XOR Bitwise exclusive OR
~ NOT Unary complement (bit inversion)
<< SHL Shift bits left
>> SHR Shift bits right