Chapter 8. OPERATORS IN C

operators

Contributed By: Shehrevar Davierwala

1. What is a operator ?

An operator is a symbol that tells the compiler to perform specific mathematical or logical manipulations.

2. Name different types of operators in C

C language is rich in built-in operators and provides the following types of operators:
• Arithmetic Operators
• Relational Operators
• Logical Operators
• Bitwise Operators
• Assignment Operators
• Increment and decrement operators
• Conditional operators
• Misc Operators

3. What are Arithmetic Operators ?

These are used to perform mathematical calculations like addition, subtraction, multiplication, division and modulus.

Following table shows all the arithmetic operators supported by C language. Assume variable A holds 10 and variable B holds 20 then:

Operator     Description                                                                           Example
+                Adds two operands                                                                 A + B will give 30
–                Subtracts second operand from the first                                   A – B will give -10
*                Multiplies both operands                                                         A * B will give 200
/               Divides numerator by de-numerator                                         B / A will give 2

%               Modulus Operator and remainder of after an integer division     B % A will give 0
++             Increments operator increases integer value by one                   A++ will give 11
—              Decrements operator decreases integer value by one                 A–will give 9

4. What are Relational Operators?
These operators are used to compare the value of two variables.
Following table shows all the relational operators supported by C language. Assume variable A holds 10 and variable B holds 20, then:

Operator                         Description                                                                       Example
==                Checks if the values of two operands are equal or not,                   (A == B) is not true                            if yes then condition becomes true.
!=                Checks if the values of two operands are equal or not,                   (A != B) is true.                          if values are not equal then condition becomes true.

>                  Checks if the value of left operand is greater than the                  (A > B) is not true.                     value of right operand, if yes   then condition becomes true.

<                  Checks if the value of left operand is less than the                       (A < B) is true.                          value of right operand, if yes then condition becomes true.

>=               Checks if the value of left operand is greater than                        (A >= B) is not true.           or equal to the value of right operand, if yes then condition becomes true.

<=          Checks if the value of left operand is less than or equal to the              (A <= B) is true.                     value of right operand, if yes then condition becomes true.

5. What are logical operators ?

These operators are used to perform logical operations on the given two variables.
Following table shows all the logical operators supported by C language. Assume variable A holds 1 and variable B holds 0, then:

Operator
&&

Called Logical AND operator. If both the operands are nonzero, then condition becomes true.
Example:  (A && B) is false.
||
Called Logical OR Operator. If any of the two operands is non-zero, then condition becomes true.
Example: (A || B) is true.
!
Called Logical NOT Operator. Use to reverses the logical state of its operand. If a condition is true then Logical NOT operator will make false.
Example: !(A && B) is true.

6. What are bitwise operator?

Bitwise operator works on bits and performs bit-by-bit operation. Bitwise operators are used in bit level programming. These operators can operate upon int and char but not on float and double.
Showbits( ) function can be used to display the binary representation of any integer or character value.
Bit wise operators in C language are; & (bitwise AND), | (bitwise OR), ~ (bitwise OR), ^ (XOR), << (left shift) and >> (right shift).

The Bitwise operators supported by C language are explained in the following table. Assume variable A holds 60 (00111100) and variable B holds 13 (00001101), then:

bitwise

7. What are assignment operators?

In C programs, values for the variables are assigned using assignment operators.
There are following assignment operators supported by C language:

Picture1

Picture2

8. What are increment and decrements operators ?

In C, ++ and – are called increment and decrement operators respectively. Both of these operators are unary operators, i.e, used on single operand. ++ adds 1 to operand and – subtracts 1 to operand respectively. For example:
Let a=5 and b=10
a++; //a becomes 6
a–; //a becomes 5
++a; //a becomes 6
–a; //a becomes 5

When i++ is used as prefix(like: ++var), ++var will increment the value of var and then return it but, if ++ is used as postfix(like: var++), operator will return the value of operand first and then only increment it. This can be demonstrated by an example:

#include <stdio.h>
int main()
{
int c=2,d=2;
printf(“%d\n”,c++); //this statement displays 2 then, only c incremented by 1 to 3.
Printf(“%d”,++c); //this statement increments 1 to c then, only c is displayed.
Return 0;
}
Output
2
4

9. What is conditional operator?

Conditional operators are used in decision making in C programming, i.e, executes different statements according to test condition whether it is either true or false.
Syntax of conditional operators;
conditional_expression?expression1:expression2
If the test condition is true (that is, if its value is non-zero), expression1 is returned and if false expression2 is returned.
Let us understand this with the help of a few examples:

int x, y ;
scanf ( “%d”, &x ) ;
y = ( x> 5 ? 3 : 4 ) ;
This statement will store 3 in y if x is greater than 5, otherwise it will store 4 in y.
The equivalent if statement will be,
if ( x > 5 )
y = 3 ;
else
y = 4 ;

10. What is misc operator?

There are few other operators supported by c language.

Operator
sizeof()

 It is a unary operator which is used in finding the size of data type, constant, arrays, structure etc.

sizeof(a), where a is integer, will return 4.

&
Returns the address of a variable.

&a; will give actual address of
the variable.

*
Pointer to a variable.
*a; will pointer to a variable.

About the author: admin

Leave a Reply

Your email address will not be published.