Работа оператором Switch
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.
Хотел переделать задачу «калькулятор» ,которая была выполнена с помощью if else if, с помощью оператора switch .
Работает задача хорошо , только когда пользователь следует командам например:
Введите число(1): 5
Выберите действие: 5 (которого нету)
[Debug error!]
#include <iostream>
using namespace std;
Dillik, когда вы вводите значение несуществующего кейса (в данном случае — число 5), срабатывает блок
default
конструкцииswitch
.После завершения проверки, у вас происходит вывод результата (переменная c). Если вы вводите значение, попадающее в блок
default
, переменнаяc
остается не инициализированной. Скорее всего, из-за этого и происходит ошибка в процессе выполнения.Решение проблемы: при срабатывании
default
, завершайте работу программы с помощью оператораreturn
.