Contenido del Curso
C++ Data Types
2. Numerical Data Types
4. Other Data Types and Concepts
C++ Data Types
Float
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
:
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:
Data Component | Description | Length |
---|---|---|
Sign | + or - | |
Exponent | Determines the range a number can take. The larger the exponent, the wider the allowed range. For the float data type, the exponent length is 1 byte (8 bits). | 1 byte (8 bits) |
Mantissa | Determines the precision a float can have. Not all numbers can be completely fitted into 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. | 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.
¿Todo estuvo claro?
Contenido del Curso
C++ Data Types
2. Numerical Data Types
4. Other Data Types and Concepts
C++ Data Types
Float
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
:
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:
Data Component | Description | Length |
---|---|---|
Sign | + or - | |
Exponent | Determines the range a number can take. The larger the exponent, the wider the allowed range. For the float data type, the exponent length is 1 byte (8 bits). | 1 byte (8 bits) |
Mantissa | Determines the precision a float can have. Not all numbers can be completely fitted into 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. | 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.
¿Todo estuvo claro?