Tuesday, 7 May 2019

Type Conversion and Typecasting In C


Introduction
In our C programs, an expression may contain data values of different data types. When the expression contains values of similar type values then no conversion is required. But if the expression contains values of different types then they must be converted to desired type. In a c programming language, the data conversion is performed in two different methods as follows:
    (i).Type Conversion
    (ii).Type Casting

 Type Conversion
  • In this procedure, a data value from one data type to another data type is converted automatically by the compiler.
  • Also known as implicit type conversion.
  • The implicit type conversion is automatically performed by the compiler.
  • To evaluate the expression, the data type is promoted from lower to higher level where the hierarchy of data types can be given as: double, float, long, int, short, and char.
Example:
#include<stdio.h>
  int main(){
     int x=3,u;
     float y,v=4.59;
     y= x;
     u=v;
     printf("y=%f\n",y);
     printf("u=%d\n",u);
 return 0;
}
Output:
 y=3.000000
 u=4  //data loss


Typecasting
  • also called as explicit type conversion or forced conversion.
  • Implicit type conversion may lead to data loss as in above example. That’s why we need type casting.
  • To convert data from one type to another type we specify the target data type in paranthesis as a prefix to the data value that has to be converted.
  • Type casting can be done by placing the destination data type in parentheses followed by the variable name that has to be converted.
The general syntax of type casting is as follows:
   (data/Type) variableName

Example:
#include<stdio.h>
   int main(){
     int x=3;
     float y;
     y= (float)x;
     printf("y=%f\n",y);
 return 0;
}
Output:
  Y=3.000000


Kindly like and share this post.

No comments:

Post a Comment