Typecasting as earlier discussed is a powerful tool and demands extreme care when being handled. Typecasting pointers in C has to be dealt with the same level of care. The language allows typecasting to be handled efficiently even by the pointers, allowing a very versatile usage of pointers and making the code user efficient. Meanwhile, the pointers as discussed earlier can be very tricky to handled at times and a single mistake can send the code crashing or possibly memory leak.
C++ contains different data types which include integer, character, float, double, arrays, etc. When we declare a variable of one data type, it can hold the data of its own type only. For example if we declare an integer type variable, we can input only an int value in it. Similar is the case with other types. But what would happen if we insist upon storing a character in an integer variable? So let us see.
One of the most powerful features C++ language offers is typecasting or type conversion. As we have seen the basics of most of the things, so before we move on, it is imperative that we know what typecasting really is. Type Casting is actually the conversion of one data type into another one. This feature is very powerful, and yet at the same moment, very dangerous, and is systems way of dealing with various data types.