Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Explicit Type Conversion | Other Data Types and Concepts
C++ Data Types
course content

Course Content

C++ Data Types

C++ Data Types

1. Introduction
2. Numerical Data Types
3. Text Data Type
4. Other Data Types and Concepts

bookExplicit Type Conversion

If you are dealing with variables of type int, rather than just numbers in code, you need to convert the value of a variable to double or float. This can be accomplished using the following syntax:

cpp

main

copy
123456789
#include <iostream> int main() { int num1 = 9; int num2 = 4; std::cout << "No conversion: " << num1 / num2 << std::endl; std::cout << "With conversion: " << (double)num1 / num2 << std::endl; }

There are several ways to explicitly perform type conversion. This one is called C-style conversion:

cpp

main

copy
12345678
#include <iostream> int main() { float num = 6.5; std::cout << (int)num << std::endl; // 6.5 to `int` is 6 std::cout << (bool)num << std::endl; // 6.5 to `bool` is true }

While this approach is concise, it does not clearly indicate the intent or nature of the conversion, which can lead to ambiguity and potential misuse.

There are more explicit and safer casting operators to provide better control over type conversions.

Most of the time, you only need a static_conversion. We will not discuss other casts in-depth. Here is the syntax:

cpp

main

copy
12345678
#include <iostream> int main() { float num = 6.5; std::cout << static_cast<int>(num) << std::endl; // 6.5 to `int` is 6 std::cout << static_cast<bool>(num) << std::endl; // 6.5 to `bool` is true }

We will not cover the difference between all of those. In general, static_cast is preferable since it is more restrictive and can prevent some unexpected behavior with complex data types.

Select all the correct ways of performing type conversion.

Select all the correct ways of performing type conversion.

Select a few correct answers

Everything was clear?

How can we improve it?

Thanks for your feedback!

Section 4. Chapter 7
We're sorry to hear that something went wrong. What happened?
some-alt