0% found this document useful (0 votes)
56 views17 pages

Type Casting

Implicit type conversion in C occurs automatically by the compiler without user input. When expressions contain multiple data types, the compiler upgrades all data types to the largest among them to avoid data loss. Explicit type conversion requires user-defined casting to convert a value to a specific data type. Relational operators like >, <, >= and <= are used to compare values and check relationships. Logical operators &&, || and ! are used to combine or negate conditions - && returns true only if both conditions are true, || returns true if either condition is true, and ! inverts the result of a condition.

Uploaded by

Raushan Kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
56 views17 pages

Type Casting

Implicit type conversion in C occurs automatically by the compiler without user input. When expressions contain multiple data types, the compiler upgrades all data types to the largest among them to avoid data loss. Explicit type conversion requires user-defined casting to convert a value to a specific data type. Relational operators like >, <, >= and <= are used to compare values and check relationships. Logical operators &&, || and ! are used to combine or negate conditions - && returns true only if both conditions are true, || returns true if either condition is true, and ! inverts the result of a condition.

Uploaded by

Raushan Kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 17

C- Operators

Type casting -Implicit Type Conversion


• Implicit Type Conversion is also known as ‘automatic type conversion‘.
It is done by the C compiler on its own, without any external trigger
from the user.
• It generally takes place when in an expression more than one data
type is present.
• In such condition type conversion (type promotion) takes place to
avoid loss of data.
• All the data types of the variables are upgraded to the data type of
the variable with the largest data type.
// An example of implicit conversion
#include<stdio.h>
int main()
{
int x = 10; // integer x
char y = 'a'; // character c
// y implicitly converted to int. ASCII // value of 'a' is 97
x = x + y; // x is implicitly converted to float
float z = x + 1.0;
printf("x = %d, z = %f", x, z);
return 0;
}

x = 107, z = 108.000000
Explicit Type Conversion

• This process is also called type casting and it is user defined.


• Here the user can type cast the result to make it of a particular data
type.
// C program to demonstrate explicit type casting
#include<stdio.h>
int main()
{
double x = 1.2; // Explicit conversion from double to int
int sum = (int)x + 1;
printf("sum = %d", sum);
return 0;
} sum = 2
Relational Operators
Relational operators are used for comparison of two values to understand the type of
relationship a pair of number shares. For example, less than, greater than, equal to etc.
Let’s see them one by one
1.Equal to operator: Represented as ‘==’, the equal to operator checks whether the
two given operands are equal or not. If so, it returns true. Otherwise it returns false.
For example, 5==5 will return true.

2.Not equal to operator: Represented as ‘!=’, the not equal to operator checks
whether the two given operands are equal or not. If not, it returns true. Otherwise it
returns false. It is the exact boolean complement of the ‘==’ operator. For example, 5!
=5 will return false.
Greater than operator: Represented as ‘>’, the greater than operator
checks whether the first operand is greater than the second operand or
not. If so, it returns true. Otherwise it returns false. For
example, 6>5 will return true.

Less than operator: Represented as ‘<‘, the less than operator checks
whether the first operand is lesser than the second operand. If so, it
returns true. Otherwise it returns false. For example, 6<5 will return
false.
Greater than or equal to operator: Represented as ‘>=’, the greater
than or equal to operator checks whether the first operand is greater than
or equal to the second operand. If so, it returns true else it returns false.
For example, 5>=5 will return true.

Less than or equal to operator: Represented as ‘<=’, the less than or


equal tooperator checks whether the first operand is less than or equal to
the second operand. If so, it returns true else false. For
example, 5<=5 will also return true.
// C program to demonstrate working of relational operators
#include <stdio.h>
int main()
{
int a = 10, b = 4; // greater than example
if (a > b)
printf("a is greater than b\n");
else
printf("a is less than or equal to b\n"); // greater than equal to
if (a >= b)
printf("a is greater than or equal to b\n");
else
printf("a is lesser than b\n"); // less than example
if (a < b)
printf("a is less than b\n");
else
printf("a is greater than or equal to b\n"); // lesser than equal to
if (a <= b)
printf("a is lesser than or equal to b\n");
else
printf("a is greater than b\n"); // equal to
if (a == b)
printf("a is equal to b\n");
else
printf("a and b are not equal\n"); // not equal to
if (a != b)
printf("a is not equal to b\n");
else
printf("a is equal b\n");
return 0;
}
Logical Operators:

They are used to combine two or more conditions/constraints or to complement the


evaluation of the original condition under consideration. They are described below:
1.Logical AND operator: The ‘&&’ operator returns true when both the conditions
under consideration are satisfied. Otherwise it returns false. For example, a &&
b returns true when both a and b are true (i.e. non-zero).
2.Logical OR operator: The ‘||’ operator returns true even if one (or both) of the
conditions under consideration is satisfied. Otherwise it returns false. For example, a ||
b returns true if one of a or b or both are true (i.e. non-zero). Of course, it returns true
when both a and b are true.
3.Logical NOT operator: The ‘!’ operator returns true the condition in consideration is
not satisfied. Otherwise it returns false. For example, !a returns true if a is false, i.e.
when a=0.
// C program to demonstrate working of logical operators
#include <stdio.h>
int main()
{
int a = 10, b = 4, c = 10, d = 20; // logical operators // logical AND example //
if (a > b && c == d)
printf("a is greater than b AND c is equal to d\n");
else
printf("AND condition not satisfied\n"); // logical AND example
if (a > b || c == d)
printf("a is greater than b OR c is equal to d\n");
else
printf("Neither a is greater than b nor c is equal to d\n");
// logical NOT example
if (!a)
printf("a is zero\n");
else
printf("a is not zero");
return 0;
}
AND condition not satisfied a is
greater than b OR c is equal to d a is
not zero

You might also like