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

Conteúdo do Curso

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 in C++. The previous 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 }

There are also 4 type casting operators:

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

And here is an example:

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.

Selecione algumas respostas corretas

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 4. Capítulo 7
some-alt