C++ Assignment Operators

Assignment operators are used in a program to assign a value of the right-hand side to the left-hand side as shown below.

//10 is assign to the variable a
int a = 10;

//the value of b (10) is assigned to a
int b = 20;
int a = b;

These are the short version formed by combining the two operators. For example Instead of writing, int a = a+5, we can write a += 5.

Following are the list of assignment operators used in C++.

OperatorDescription
=Simple assignment operator, Assigns values from right side operands to left side operand.
a = b + c;
+=Add AND assignment operator, It adds the right operand to the left operand and assigns the result to the left operand.
a += b
-=Subtract AND assignment operator, It subtracts the right operand from the left operand and assigns the result to the left operand.
a -= b
*=Multiply AND assignment operator, It multiplies the right operand with the left operand and assigns the result to the left operand.
a *= b
/=Divide AND assignment operator, It divides left operand with the right operand and assigns the result to the left operand.
a /= b
%=Modulus AND assignment operator, It takes modulus using two operands and assigns the result to the left operand.
a %= b
<<=Left shift AND assignment operator.
a <<= 2
>>=Right shift AND assignment operator.
a >>= 2 or a = a >> 2
&=Bitwise AND assignment operator.
a &= 2 or a = a & 2
^=Bitwise exclusive OR and assignment operator.
a ^= 2 or a = a ^ 2
|=Bitwise inclusive OR and assignment operator.
a |= 2 or a = a | 2

Example: C++ program for Assignment Operators

#include <iostream>
using namespace std;

int main()
{
   int a = 11;
   int result;

   result = a;
   cout << "=  Operator: " << result << endl;

   result += a;
   cout << "+= Operator: " << result << endl;

   result -= a;
   cout << "- -= Operator: " << result << endl;

   result *= a;
   cout << "*= Operator: " << result << endl;

   result /= a;
   cout << "/= Operator: " << result << endl;

   result = 100;
   result %= a;
   cout << "%= Operator: " << result << endl;

   result <<= 2;
   cout << "<<= Operator: " << result << endl;

   result >>= 2;
   cout << ">>= Operator: " << result << endl;

   result &= 2;
   cout << "&= Operator: " << result << endl;

   result ^= 2;
   cout << "^= Operator: " << result << endl;

   result |= 2;
   cout << "|= Operator: " << result << endl;

   return 0;
}

Output:

=  Operator: 11
+= Operator: 22
- -= Operator: 11
*= Operator: 121
/= Operator: 11
%= Operator: 1
<<= Operator: 4
>>= Operator: 1
&= Operator: 0
^= Operator: 2
|= Operator: 2