Тип данных отвечает на простой вопрос: что именно лежит в переменной. Число? Дробь? Текст? Один символ? Правда или ложь?
В C++ типы особенно важны, потому что язык проверяет их во время компиляции. Это делает старт чуть строже, зато помогает раньше ловить ошибки
- int: целые числа
- double: дробные числа
- bool: правда или ложь
- char: один символ
- string: текст
- Ввод разных типов
- Приведение типов
- Маленькая программа
- Частые ошибки
- Строка в одинарных кавычках
- Дробь в int
- Забыли include string
- Сравнивают разные типы без понимания
- Мини-задание
- Ответы на эти вопросы могут быть для вас полезными
- Что такое тип данных в C++?
- Когда использовать int?
- Когда использовать double?
- Чем char отличается от string?
- Почему C++ строгий к типам?
- Что почитать дальше по C++
int: целые числа
int age = 25;
int lessons = 10;
int balance = -300;
int подходит для целых чисел: возраст, количество уроков, номер заказа, счетчик
Вывод:
std::cout << age << std::endl;
double: дробные числа
double price = 1499.90;
double rating = 4.8;
double используют для чисел с дробной частью
Пример:
int count = 3;
double price = 1499.90;
double total = count * price;
Для денег в настоящих финансовых системах есть дополнительные нюансы точности, но для учебного старта double подходит
bool: правда или ложь
bool isPaid = true;
bool hasDiscount = false;
bool хранит только два значения: true или false
if (isPaid) {
std::cout << "Заказ оплачен" << std::endl;
}
Такой код читается почти как английская фраза
char: один символ
char grade = 'A';
char хранит один символ. Символ пишется в одинарных кавычках
char letter = 'X';
Не путай:
char letter = 'A';
std::string word = "A";
Первое — символ, второе — строка
string: текст
Для std::string нужно подключить:
#include <string>
Пример:
std::string name = "Анна";
std::string product = "Курс по C++";
Строка пишется в двойных кавычках
Полный пример:
#include <iostream>
#include <string>
int main() {
std::string name = "Анна";
int lessons = 5;
std::cout << name << " прошла уроков: " << lessons << std::endl;
return 0;
}
Ввод разных типов
#include <iostream>
#include <string>
int main() {
std::string name;
int age;
std::cout << "Введите имя: ";
std::cin >> name;
std::cout << "Введите возраст: ";
std::cin >> age;
std::cout << name << ", возраст: " << age << std::endl;
return 0;
}
std::cin >> name читает до пробела. Если нужно имя с пробелами, понадобится std::getline, но это отдельная тема
Приведение типов
Проблема:
int total = 5;
int count = 2;
double average = total / count;
Результат будет 2, а не 2.5, потому что делятся два int
Исправление:
double average = static_cast<double>(total) / count;
Теперь результат будет дробным
Маленькая программа
#include <iostream>
#include <string>
int main() {
std::string product = "Книга";
int count = 3;
double price = 1200.50;
bool isPaid = true;
char grade = 'A';
double total = count * price;
std::cout << "Товар: " << product << std::endl;
std::cout << "Количество: " << count << std::endl;
std::cout << "Итого: " << total << std::endl;
std::cout << "Оплачен: " << isPaid << std::endl;
std::cout << "Оценка: " << grade << std::endl;
return 0;
}
bool при обычном выводе может показаться как 1 или 0. Если хочется текст:
if (isPaid) {
std::cout << "Оплачен: да" << std::endl;
} else {
std::cout << "Оплачен: нет" << std::endl;
}
Частые ошибки
Строка в одинарных кавычках
Неправильно:
std::string name = 'Анна';
Правильно:
std::string name = "Анна";
Дробь в int
int price = 1499.90;
Дробная часть потеряется. Используй double
Забыли include string
Если используешь std::string, подключи <string>
Сравнивают разные типы без понимания
C++ может преобразовывать типы, но лучше делать это явно, когда результат важен
Мини-задание
Создай программу профиля ученика:
- имя:
std::string; - возраст:
int; - средний балл:
double; - активен ли курс:
bool; - оценка:
char.
Выведи все значения в консоль
Ответы на эти вопросы могут быть для вас полезными
Что такое тип данных в C++?
Это описание того, какие значения может хранить переменная и какие операции с ними допустимы
Когда использовать int?
Когда нужны целые числа: счетчики, количество, возраст, индексы
Когда использовать double?
Когда нужна дробная часть: цена, среднее, коэффициент, процент
Чем char отличается от string?
char — один символ в одинарных кавычках. std::string — строка текста в двойных кавычках
Почему C++ строгий к типам?
Потому что типы проверяются компилятором. Это помогает ловить часть ошибок до запуска программы
Что почитать дальше по C++
Чтобы тема складывалась в понятный маршрут, рядом лучше открыть:
- C++ с нуля: первый файл, переменные и вывод — собрать типы в первую маленькую программу.
- Массивы в C++ на примерах — положить значения одного типа в массив.
- Функции в C++: как убрать повтор кода — передавать значения в функции.
- Указатели в C++ без паники — понять, где у значения появляется адрес.



