Type Conversion or Type Casting is one the important concept in C programming, it converts one data type to another. It can also be called data conversion. The compiler automatically changes the data type.
In C programming, typecasting operation is of two types:
- Implicit type casting
- Explicit type casting
Implicit type casting:
Implicit type casting means the conversion of data types without losing its original meaning. The data type is automatically changed. Implicit type casting is essential when users want to change the data types without losing its value stored in a variable.
Example of implicit type casting in C programming:
char x = 'k'; //ASCII value of k is 107
y = x; //implicit type casting
printf("Printing character K: %c\n", x);
printf("Printing K ASCII value as integer: %d\n", y);
The output if implicit type casting.
Printing character K: k
Printing K ASCII value as integer: 107
Explicit type casting:
As we understood that implicit type conversion is automatic but in some cases, the programmer might need to force the compiler to change the data type. Posing the data type of the expression of a specific type is called Explicit type casting.
The general syntax for type casting operations is:
type-name is the standard ‘C’ language data type.
expression can be a constant, a variable, or an actual expression.
Example of Explicit type casting in C programming:
float f = 94.7;
int a = (int) f + 10;
printf("The Value of f is %f\n", f);
printf("The Value of a is %d\n", a);
The output if Explicit type casting.
The Value of f is 94.699997
The Value of a is 104
Keep in mind the following rules for programming practice when dealing with different data type to prevent from data loss :
- Integer types should be converted to float.
- Float types should be converted to double.
- Character types should be converted to an integer.