Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗cpPmCvAt 62 of 390 menu
◀ ▶

Автовывод типа в C++

Автовывод типа делает слово auto. Оно число не преобразует, а списывает тип у значения справа от знака =. Имя типа слева при этом не пишут.

Запишем целое 27. Справа нет точки, поэтому auto берет тип int:

auto num = 27; std::cout << num << "\n"; // выведет 27

Дробь 1.5 справа задает тип double:

auto num = 1.5; std::cout << num << "\n"; // выведет 1.5

Буква f в конце дроби задает float. На экране тип не виден, его задает запись справа:

auto num = 3.14f; std::cout << num << "\n"; // выведет 3.14

Если справа стоит действие, тип берется по правилам этого раздела. Сложим int и double. Сумма получает тип double:

int num1 = 5; double num2 = 2.5; auto num3 = num1 + num2; std::cout << num3 << "\n"; // выведет 7.5

Деление двух целых дает int. Слово auto дробь не возвращает. Хвост пропадает:

int num1 = 5; int num2 = 2; auto num3 = num1 / num2; std::cout << num3 << "\n"; // выведет 2

Если хотя бы одно число дробное, auto спишет уже double. Поделим 5.0 на 2:

auto num = 5.0 / 2; std::cout << num << "\n"; // выведет 2.5

Даны две переменные:

int num1 = 7; int num2 = 2;

Запишите частное в переменную auto и выведите ее. Будет ли на экране дробь?

Дан следующий код:

auto num = 9.0 / 2; std::cout << num << "\n";

Скажите, что выйдет на экран.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить