Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Числові Типи Даних | Змінні та Типи Даних
Знайомство з C++
course content

Зміст курсу

Знайомство з C++

Знайомство з C++

1. Привіт, C++
2. Змінні та Типи Даних
3. Знайомство з Операторами
4. Знайомство з Потоком Програми
5. Знайомство з Функціями

bookЧислові Типи Даних

Цілі числа

Тип даних int може зберігати значення в діапазоні від 2,147,483,648 до 2,147,483,647.

cpp

main

copy
12345678910
#include <iostream> int main() { int goodNumber = 12; int tooLarge = 2147483648; std::cout << "Printing tooLarge: " << tooLarge << std::endl; std::cout << "Printing goodNumber: " << goodNumber << std::endl; }

Це відбувається тому, що коли ви оголошуєте змінну типу int, вона виділяє рівно 4 байти пам'яті вашого комп'ютера. А числа вище 2147483647 (або нижче -2147483648) не поміщаються у ці 4 байти. На щастя, інші доступні типи даних можуть виділити вам більше (або менше) місця для ваших потреб. Ось таблиця:

Тип даних
Діапазон
Розмір
short
-32,768 - 32,767
2 байти
int
-2,147,483,648 до 2,147,483,647
4 байти
long
-9,223,372,036,854,775,808 до 9,223,372,036,854,775,807
8 байт

Отже, ви можете використовувати long для зберігання великих чисел (наприклад, населення світу). Ви також можете використовувати short, якщо ви впевнені, що ваше число не вийде за межі діапазону від -32,768 до 32,767 (наприклад, для зберігання віку користувача). Використання short займе менше місця.

cpp

main

copy
123456789101112
#include <iostream> int main() { short age = 22; int likes = 143200; long population = 7900000000; std::cout << "Age: " << age << std::endl; std::cout << "Likes: " << likes << std::endl; std::cout << "World's population: " << population << std::endl; }

Зауважте.

Будьте обережні з типом даних, який ви обираєте. Якщо діапазон типу перевищено, компілятор C++ не скаже вам про це, і ви отримаєте неочікуване значення не знаючи, що щось не так.

Числа з плаваючою комою

Наведені вище типи даних призначені для зберігання цілих чисел. Якщо ми спробуємо присвоїти 1.6 одному з них, ось що ми отримаємо:

cpp

main

copy
1234567
#include <iostream> int main() { int num = 1.6; std::cout << num << std::endl; }

Тип int ігнорує десяткову частину числа. Така ж історія з short або long. Для зберігання чисел з плаваючою комою (десяткових) слід використовувати тип даних float або double.

Тип Даних
Точність
Розмір
float
7 десяткових знаків
4 байти
double
15 десяткових знаків
8 байтів

Ось приклад використання double для зберігання 1.6.

cpp

main

copy
1234567
#include <iostream> int main() { double num = 1.6; std::cout << num << std::endl; }

Зауважте.

Оскільки тип float має точність лише 7 цифр, число 123.456789 вже виходить за межі його діапазону. Це може призвести до неточних результатів (як показано у прикладі нижче). Тому краще використовувати double за замовчуванням, якщо ви не впевнені, що точність float достатня.

cpp

main

copy
12345678910
#include <iostream> int main() { float floatNum = 123.45678; double doubleNum = 123.45678; std::cout << "using float:" << floatNum - 123 << std::endl; std::cout << "using double:" << doubleNum - 123 << std::endl; }

Очевидно, що ви можете використовувати float або double для зберігання цілих чисел, оскільки це десяткові числа з десятковою частиною, що дорівнює 0. Однак, як правило, якщо змінна зберігає значення, які можуть бути лише цілими числами (наприклад, населення або вподобання), слід використовувати short/int/long.

cpp

main

copy
1234567
#include <iostream> int main() { float price = 100; std::cout << "Price is: " << price << std::endl;; }
Все було зрозуміло?

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

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

Секція 2. Розділ 3
some-alt