Understanding Assignment Operators in C# Programming: Essential Concepts and Usage
☰Fullscreen
Table of Content:
There are following assignment operators supported by C# −
| Operator | Description | Example |
|---|---|---|
| = | Simple assignment operator, Assigns values from right side operands to left side operand | C = A + B assigns value of A + B into C |
| += | Add AND assignment operator, It adds right operand to the left operand and assign the result to left operand | C += A is equivalent to C = C + A |
| -= | Subtract AND assignment operator, It subtracts right operand from the left operand and assign the result to left operand | C -= A is equivalent to C = C - A |
| *= | Multiply AND assignment operator, It multiplies right operand with the left operand and assign the result to left operand | C *= A is equivalent to C = C * A |
| /= | Divide AND assignment operator, It divides left operand with the right operand and assign the result to left operand | C /= A is equivalent to C = C / A |
| %= | Modulus AND assignment operator, It takes modulus using two operands and assign the result to left operand | C %= A is equivalent to C = C % A |
| <<= | Left shift AND assignment operator | C <<= 2 is same as C = C << 2 |
| >>= | Right shift AND assignment operator | C >>= 2 is same as C = C >> 2 |
| &= | Bitwise AND assignment operator | C &= 2 is same as C = C & 2 |
| ^= | bitwise exclusive OR and assignment operator | C ^= 2 is same as C = C ^ 2 |
| |= | bitwise inclusive OR and assignment operator | C |= 2 is same as C = C | 2 |
Example
The following example demonstrates all the assignment operators available in C# −
using System; namespace OperatorsAppl { class Program { static void Main(string[] args) { int a = 21; int c; c = a; Console.WriteLine("Line 1 - = Value of c = {0}", c); c += a; Console.WriteLine("Line 2 - += Value of c = {0}", c); c -= a; Console.WriteLine("Line 3 - -= Value of c = {0}", c); c *= a; Console.WriteLine("Line 4 - *= Value of c = {0}", c); c /= a; Console.WriteLine("Line 5 - /= Value of c = {0}", c); c = 200; c %= a; Console.WriteLine("Line 6 - %= Value of c = {0}", c); c <<= 2; Console.WriteLine("Line 7 - <<= Value of c = {0}", c); c >>= 2; Console.WriteLine("Line 8 - >>= Value of c = {0}", c); c &= 2; Console.WriteLine("Line 9 - &= Value of c = {0}", c); c ^= 2; Console.WriteLine("Line 10 - ^= Value of c = {0}", c); c |= 2; Console.WriteLine("Line 11 - |= Value of c = {0}", c); Console.ReadLine(); } } }
When the above code is compiled and executed, it produces the following result −
Line 1 - = Value of c = 21 Line 2 - += Value of c = 42 Line 3 - -= Value of c = 21 Line 4 - *= Value of c = 441 Line 5 - /= Value of c = 21 Line 6 - %= Value of c = 11 Line 7 - <<= Value of c = 44 Line 8 - >>= Value of c = 11 Line 9 - &= Value of c = 2 Line 10 - ^= Value of c = 0 Line 11 - |= Value of c = 2