Binary Operators C Programming

Binary operators act upon a two operands to produce a new value. Such, operators can be classified into different categories.

Syntax for binary operator is:


operand1    operator    operand2  	

Arithmetic Operators

Arithmetic operators are the operators used to perform the arithmetic operations like addition, subtraction, multiplication, division, and modulo operation.

Different arithmetic operators available in C programming language are tabulated below:

Symbol Meaning Examples
+ Addition a=23 and b=10 then a+b is equal to 33.
- Subtraction a=23 and b=10 then a-b is equal to 13.
* Multiplication a=23 and b=10 then a*b is equal to 230.
/ Division a=23 and b=10 then a/b is equal to 2 (In Integer division) and 2.3 (In Real Division)
% Remainder or Modulo a=23 and b=10 then a%b is equal to 3.
Note: Both operand should be integer while using % operator.

Arithmetic operators (except %) can be used in 3 modes:

Integer mode: where both the operands are integer.

Real mode: where both the operands are real.

Mixed mode: where one operand is integer and second operator is real.

Note : Result is always a floating point number for real mode and mixed mode. For integer mode, result is always an integer number.

Relational Operators

These operators are very helpful for making decisions. Depending upon the condition, it returns either 0 or 1. When the condition with these operators is true, 1 is returned. If the condition is false, it returns 0.

Different relational operators available in C programming language are tabulated with examples:

Symbol Meaning Examples
< Less Than a=2 and b=3 then a < b gives True (1) similarly b < a gives False (0)
> Greater Than a=2 and b=2 then a>b gives False (0) similarly b > a gives False (0)
<= Less Than or Equal To a=2 and b=2 then a <= b gives True(1)
>= Greater Than or Equal To a=3 and b=4 then a >= b gives False(0)
== Equal To a=9 and b=9 then a==b gives True(1) similarly if a=8 and b=9 then a==b gives False (0)
!= Not Equal To a=9 and b=9 then a!=b gives False(0) similarly if a=8 and b=9 then a!=b gives True (1)

Logical Operators

These operators are generally used along with relation operators. Like relational operators, output of these operators is either True (1) or False (0).

Different logical operators available in C programming language are tabulated with examples:

Symbol Meaning Examples
&& Logical AND
Rule:
False&&False = False
False&&True = False
True&&False = False
True&&True = True
(2>3 && 4>3) Evaluates to False && True which then evaluates to False (0).
|| Logical OR
Rule:
False&&False = False
False&&True = True
True&&False = True
True&&True = True
(2>3 || 4>3) Evaluates to False || True which then evaluates to True (1).
! Logical NOT
Rule:
! (False) = True
! (True) = False
Note: This is Unary Operator
!(2>3) Evaluates to !(False) which then evaluates to True (1).

Assignment Operators

Assignment operators are used when the value is to be assigned to an identifier, a variable. With execution of assignment operators, value at the right is assigned to the left. The destination variable loses the old value; i.e. old value is over ridden with the new value. If previous value is also required; it should be saved in some other variables.

Different Assignment operators available in C programming language are tabulated with examples:

Symbol Meaning Examples
= Assignment x=2, here value 2 is assigned to x.
+= Addition and Assignment a += b is equivalent to a = a+b
-= Subtraction and Assignment a - = b is equivalent to a = a-b
*= Multiplication and Assignment a *= b is equivalent to a = a*b
/= Division and Assignment a /= b is equivalent to a = a/b
%= Remainder and Assignment a %= b is equivalent to a = a%b

Bitwise Operators

The bitwise operators are the bit manipulation operators. They can manipulate individual bits.

Different bitwise operators available in C programming language are tabulated with examples:

Symbol Meaning Examples
~ Bitwise Complement
Note: This is Unary Operator
If a=01011 then ~a gives 10100
& Bitwise AND If a = 1001 and b=1111 then a&b gives 1001
| Bitwise OR If a = 1001 and b=1111 then a|b gives 1111
^ Bitwise XOR If a = 1001 and b=1111 then a^b gives 0110
<< Bitwise Shift Left If a=1010 and b=1 then a << b gives 0100 (Left shifted by 1 and 0 is inserted at last)
>> Bitwise Shift Right If a=1111 and b=2 then a>>b gives 0011 (Right shifted by 2 and two 0’s are inserted at the beginning)