Ошибка с паролем, с использованием функции void
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.
Вообщем проблема. Ошибку я написал в виде комментария
Будь внимательным!
У меня так же
Ошибка не в
А в
Ошибка в
а в
её следствие.
Ты посмотри внимательно как ты описал переменную passpord. Я вообще удивляюсь, как компилятор пропустил эту строку. MSVS — ругается именно на первую строку (которую я указал), а не на вторую. А Dev-C++ откомпилил вообще без ошибок. Ты какой компилятор используешь?
У тебя, кстати, есть ещё одна явная ляпа:
Программу в целом критиковать не буду — считаем, что это черновой набросок эскиза программы.
Я не пойму почему здесь все так сложно?
Куча заголовочных файлов... куча объявлений.
Вот этот момент очень интересный:
у тебя же переменная
int passpord;
объявлена в функцииmaine();
поэтому она находится вне области видимости для функцииvoid Password_false()
отсюда и неинициализированная локальная переменная. И для чего ее при присваивании преобразовывать к типу int???Я думаю, все можно сделать проще, допустим так:
Прошу прощения, допущена ошибка. После ввода четырех неправильных значений и пятого правильного, программа выводит
std::cout << "\nYou have no any attempts. By :(\n";
Ошибка здесь :(Исправляюсь, этот код рабочий :)
В данном случае функции вообще не нужны.
Точнее говоря, если смотреть шире, то должна быть одна функция проверки пароля, которая возвращает вызывающему коду некое значение, показывающее правильно или неправильно был введён пароль. Например:
Не надо делать функции ради функций. Разбиение кода на функции должно быть (1) осмысленным и (2) логичным.