An operator is a symbol that tells the compiler to perform specific
mathematical or logical manipulations. C# has rich set of built-in
operators and provides the following type of operators:
- Arithmetic Operators
- Relational Operators
- Logical Operators
- Bitwise Operators
- Assignment Operators
- Misc Operators
This tutorial explains the arithmetic, relational, logical, bitwise, assignment, and other operators one by one.
Arithmetic Operators
Following table shows all the arithmetic operators supported by C#. Assume variable A holds 10 and variable B holds 20 then:
| + | Adds two operands |
| - | Subtracts second operand from the first |
| * | Multiplies both operands |
| / | Divides numerator by de-numerator |
| % | Modulus Operator and remainder of after an integer division |
| ++ | Increment operator increases integer value by one |
| -- | Decrement operator decreases integer value by one |
Operator Precedence in C#
Operator precedence determines the grouping of terms in an
expression. This affects evaluation of an expression. Certain operators
have higher precedence than others; for example, the multiplication
operator has higher precedence than the addition operator.
For example x = 7 + 3 * 2; here, x is assigned 13, not 20 because
operator * has higher precedence than +, so the first evaluation takes
place for 3*2 and then 7 is added into it.
Here, operators with the highest precedence appear at the top of the
table, those with the lowest appear at the bottom. Within an expression,
higher precedence operators are evaluated first.
| Category | Operator |
| Postfix | () [] -> . ++ - - |
| Unary | + - ! ~ ++ - - (type)* & sizeof |
| Multiplicative | * / % |
| Additive | +- |
| Shift | << >> |
| Equality | == != |

No comments: