Понимание типов данных C++: основы, модификаторы и лучшие практики
Типы данных в C++: подробное руководство
Это руководство углубляется в основные типы данных C++, от базовых целых чисел и чисел с плавающей точкой до символов и булевых значений. Практические примеры показывают, как объявлять и использовать каждый тип.
Типы данных в C++ — это объявления, указывающие вид и размер данных, которые может хранить переменная. Например:
int age = 13;
Здесь age — int, способный хранить 2- или 4-байтовые целые числа. Точный размер зависит от реализации, но int гарантированно не менее 16 бит.
Фундаментальные типы данных C++
В таблице ниже перечислены фундаментальные типы, их значение и типичные размеры в байтах:
| Тип данных | Значение | Размер (байт) |
|---|---|---|
int | Целое число | 2 или 4 |
float | С плавающей точкой | 4 |
double | Двойной точности | 8 |
char | Символ | 1 |
wchar_t | Широкий символ | 2 |
bool | Булев | 1 |
void | Пустой (нет данных) | 0 |
Рассмотрим каждый тип подробнее.
1. C++ int
- Ключевое слово
intобъявляет целые значения. - Типичный размер: 4 байта, диапазон от -2 147 483 648 до 2 147 483 647.
- Пример:
int salary = 85000;
2. C++ float и double
- Хранят вещественные числа с дробной частью.
- Размер:
float— 4 байта;double— 8 байт, обеспечивая примерно в два раза большую точность. - Пример:
float area = 64.74;
double volume = 134.64534;
Эти типы также поддерживают научную нотацию:
double distance = 45E12; // 45 × 10^12
3. C++ char
- Представляет одиночный 8-битовый символ.
- Записывается в одинарных кавычках, например,
'h'. - Пример:
char test = 'h';
Примечание: Внутри char хранится целочисленный код символа.
4. C++ wchar_t
- Тип широкого символа; обычно 2 байта.
- Используется для Unicode-символов, выходящих за 8-битовый диапазон.
- Пример:
wchar_t test = L'ם'; // Иврит
Префикс L обозначает широкий строковый литерал.
Примечание: C++11 ввел char16_t и char32_t для Unicode фиксированной ширины.
5. C++ bool
- Хранит только
trueилиfalse. - Необходим для управления потоком в условиях и циклах.
- Пример:
bool cond = false;
6. C++ void
- Указывает на отсутствие значения; используется в типах возврата функций и указателях.
- Переменные типа
voidобъявлять нельзя.
Модификаторы типов в C++
Модификаторы уточняют фундаментальные типы. Четыре основных модификатора:
signedunsignedshortlong
Их можно применять к int, double и char.
Список модифицированных типов данных C++
| Тип данных | Размер (байт) | Значение |
|---|---|---|
signed int | 4 | Стандартное целое (эквивалент int) |
unsigned int | 4 | Только неотрицательные значения |
short | 2 | Малое целое: -32 768 .. 32 767 |
unsigned short | 2 | Только положительные: 0 .. 65 535 |
long | не менее 4 | Большое целое |
unsigned long | 4 | Большое положительное целое |
long long | 8 | Очень большое целое |
unsigned long long | 8 | Очень большое положительное целое |
long double | 12 | Расширенная точность с плавающей точкой |
signed char | 1 | Знаковый символ: -127 .. 127 |
unsigned char | 1 | Беззнаковый символ: 0 .. 255 |
Примеры:
long b = 4523232;
long int c = 2345342;
long double d = 233434.56343;
short e = 3434233; // Ошибка: выходит за диапазон
unsigned int a = -5; // Ошибка компиляции
Производные типы данных
Производные типы строятся на фундаментальных: массивы, указатели, указатели на функции, структуры, объединения и перечисления. Они рассматриваются в последующих уроках.
Язык C
- Мастерство C# переменных и примитивных типов данных: полное руководство
- Освоение директив препроцессора C#: практическое руководство
- Освоение переменных, литералов и констант в C++: подробное руководство
- Освоение операторов C++: полное руководство с практическими примерами
- Типы данных в C: int, float, char и другие — полное руководство
- Освоение типов данных в Python: практическое руководство
- Примитивные типы данных в Java: полное руководство с примерами
- Операторы в C++: типы, примеры и практические программы
- Тип данных char в C++: объявление, ASCII и методы преобразования
- 5 моделей центров обработки данных: дизайн, кейсы и примеры