Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Working with Floating-Point Numbers | Numerical Data Types
C++ Data Types
course content

Зміст курсу

C++ Data Types

C++ Data Types

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

book
Working with Floating-Point Numbers

The numbers do not end with integers. There are also floating-point numbers. In C++, we use float and double data types to store them. This chapter will cover the float data type, while the next will address the double data type and its distinctions. Below is the syntax for the usage of float:

h

float

copy
1
float num = 0.45;

Let's take a quick look at how floating-point numbers are stored in memory.
The float data type takes up 4 bytes of memory, just like an int. However, converting such numbers to binary code is much trickier:

Here is an example of how float num = 13.45 would be stored:

It is okay if you do not entirely understand what is happening here. The important thing to note is that the representation of a float is split into 3 parts:

  • the sign component is represented by either a plus (+) or minus (-) symbol. It indicates whether a number is positive or negative;

  • the exponent component determines the range that a number can represent. The larger the exponent, the wider the range of values that can be represented. For the float data type, the exponent occupies 1 byte (8 bits) of memory;

  • the mantissa component determines the precision of a float. Not all numbers can be exactly represented in memory, and the precision of a number is defined by the length of the mantissa. For the float data type, the mantissa length is 23 bits.

As a result, float has a precision of 7 decimal digits and a range of 1.2e-38 to 3.4e+38 (applies to both negative and positive numbers). So most of the time, the range is not a problem. But precision sometimes is.

What is the maximum number of decimal digits that a `float` can accurately represent?

What is the maximum number of decimal digits that a float can accurately represent?

Виберіть правильну відповідь

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 4
We're sorry to hear that something went wrong. What happened?
some-alt