Инициализация и присваивание
Когда вы задаёте переменной значение в момент её создания, это называется инициализацией. Позже в неё можно сохранить другое значение, и это называется присваиванием. Чтобы присвоить значение, напишите имя переменной, = и новое значение, но без типа данных, потому что переменная уже существует:
int score = 0;
std::cout << "Счёт: " << score << "\n";
score = 50;
std::cout << "Счёт: " << score << "\n";Это выведет:
Счёт: 0
Счёт: 50Программа выполняет инструкции одну за другой, сверху вниз. Когда выполняется первый вывод, в score лежит 0. Следующая строка заменяет его на 50, и старого значения больше нет. Поэтому второй вывод показывает новое значение.
Частая ошибка — снова написать тип данных при присваивании: int score = 50;. Это создало бы вторую переменную с тем же именем, а C++ этого не позволяет. Программа не компилируется, и компилятор сообщает redefinition of 'score': вы определяете имя score во второй раз.
В переменную можно сохранить и значение другой переменной. Сохраняется копия значения, поэтому, когда вы позже измените одну из переменных, другая останется прежней:
int record = 50;
int score = record;
record = 80;
std::cout << score << " и " << record << "\n";Это выведет:
50 и 80Переменную можно создать и без значения, а присвоить его позже:
int score;
score = 50;Но пока вы ничего в неё не сохранили, значение переменной не определено. В ней лежит то, что случайно осталось на её месте в памяти, и C++ вас не останавливает:
int score;
std::cout << "Счёт: " << score << "\n";На этом сайте такая программа обычно выводит Счёт: 0, но на другом компьютере она могла бы вывести Счёт: 76646343, а в следующий раз — что-нибудь ещё. Поэтому не полагайтесь на ноль и задавайте переменным значение при создании: int score = 0;.
Задание
- 1
У
temperatureещё нет значения, поэтому программа выводит число, которое в неё никто не сохранял. Инициализируйте её: задайте ей значение12при создании. Тогда программа выведетУтром: 12 °C. - 2
Днём стало теплее. Под выводом присвойте
temperatureновое значение18. - 3
Под этим выведите новое значение так же, но со словом
ДнёмвместоУтром. Программа должна вывести:Утром: 12 °C Днём: 18 °C