Type Casting vs Type Conversion
Nozibul Islam

Nozibul Islam @nozibul_islam_113b1d5334f

About: I am a Full-Stack Developer specialized Front-end Developer. Passionate about algorithms, data structures, and coding challenges & always ready to face new challenges.

Location:
Dhaka, Bangladesh
Joined:
Aug 24, 2024

Type Casting vs Type Conversion

Publish Date: Dec 27 '24
20 0

Type Casting vs Type Conversion

In programming languages, it is often necessary to change the value of one data type to another.
Two common terms are used for this transformation:

  1. Type Casting
  2. Type Conversion

Type Casting:

Type Casting is a process where a data type is forcibly converted to another data type, even if the types are not fully compatible with each other.

🔹 How it works:

  • The compiler or interpreter assumes that you know what you are doing.
  • It can be unsafe because incorrect type casting can introduce bugs or cause the program to crash.

🔹 Where it is used:

  • Type casting is common in languages like C/C++, Java, and others.

🔹 Example (C/C++):

int x = 10;  
float y = (float)x;  // Type casting - forcibly converting int to float
Enter fullscreen mode Exit fullscreen mode

Type Conversion:

Type Conversion is a process where a data type is safely converted to another type. This can be either Implicit (automatic) or Explicit (manual).

🔹 Implicit Conversion (Automatic):

  • The compiler automatically and safely converts the type.
  • Languages like C/C++ and Java support this kind of conversion.

🔹 Explicit Conversion (Manual):

  • The programmer must explicitly perform the type conversion.
  • In Golang, only explicit type conversion is allowed.

🔹 Example (Golang):

var x int = 10  
var y float64 = float64(x)  // Type conversion - safely converting int to float 
Enter fullscreen mode Exit fullscreen mode

In Summary:

  • Type Casting → Forcibly changes data types (Unsafe, not available in Golang)
  • Type Conversion → Safely changes data types (Explicit in Golang)

Golang avoids bugs through type conversion, keeping the code simple and
reliable.

Comments 0 total

    Add comment