# Operators in C

An expression consists of variables and constants separated by operators. C language uses 7 types of operators as listed below:

**1. Arithmetic Operators :** Arithmetic Operators are used to perform arithmetic operations.

Operator | Meaning | Example | Result |

+ | addition | 4+2 | 6 |

- | subtraction | 4-2 | 2 |

* | multiplication | 4*2 | 8 |

/ | division | 4/2 | 2 |

% | modulus | 4%2 | 0 |

**2. Relational Operators :** Relational Operators are used to compare the values of operands or expressions to produce a logical value. A logical is either **true** or **false.**

Operator | Meaning | Example | Result |

< | less than | 4<3 | false |

> | greater than | 4>3 | true |

<= | less than or equal to | 4<=3 | false |

>= | greater than or equal to | 4>=3 | true |

(==) | equal to | 4==3 | false |

!= | not equal to | 4!=3 | true |

**3. Logical Operators :** Logical Operators are used to connect more relational operations to form a complex expression that is called Logical Operators or Logical expression. A value obtained by evaluating a logical expression is always logical either **true** or **false.**

Operator | Meaning | Example | Result |

&& | logical and | (4<3)&&(4>3) | false |

|| | logical or | (4<2) || (4>3) | true |

! | logical not | ! (4<2) | true |

**4. Increment and Decrement operators ( ++ and – –) :** Increment operator (++) is used to increase the value of an integer or char variable by 1. Decrement operator (- -) is used to reduce the value of an integer or char variable by 1. Consider the following examples :

a = 25**;**

a++ or ++a will produce the result a = 26

a = 25**;**

a- – or – -a will produce the result a = 24

**5. Assignment Operators :** Assignment Operators are used to perform arithmetic operations while assigning a value to a variable.

**6. Conditional Operators or Ternary Operators **(**?:**) **:** Conditional Operators is used to check a condition and select a value depending on the value of the condition. Normally the selected value will be assigned to a variable which has the following form :

variable=(condition)?value1:value2;

**Example :**

big=(x>y)?x:y;

**7. Bitwise Operators :** Bitwise Operators are used to perform operations at a binary digit level. These operators are not commonly used and used only in special applications where optimized use of storage is required.

Operator | Meaning |

<< | Shifts the bits to left |

>> | Shifts the bit to right |

~ | Bitwise inversion |

& | Bitwise logical and |

| | Bitwise logical or |

^ | Bitwise exclusive or |