im работает над программой на C++, которая запрашивает имя пользователя и пароль, а затем регистрирует вас на консоли (вроде). После входа в систему он отображает то, что я дважды использовал в своем коде (MYCONSOLE: MYCONSOLE :). Я не очень хорошо объяснял, но, надеюсь, мой код даст вам лучшую идею. Любая идея, что моя ошибка? PS, пожалуйста, не ненавидите меня, если решение прост, им действительно ново для этого langauge. =)Консоль Вывод дублирующего? C++
#include <iostream>
#include <conio.h>
#include <string>
#include <stdio.h>
#include <windows.h>
using namespace std;
int successfullogin();
/*USERNAME:ROOT
PASSWORD:TOOR*/
//Login Screen
int main() {
string username;
string password;
cout << "Enter UserName: ";
cin >> username;
cout << endl;
if (username == "root") {
cout << "Enter PassWord: ";
cin >> password;
if (password == "toor") {
system("cls");
cout << endl << "Login Successful... \n \nPlease wait while console is being initialised...";
Sleep(5000);
system("cls");
successfullogin();
}
else {
cout << endl << "Incorrect Password \a";
system("color 4");
_getch();
system("cls");
system("color f");
main();
}
}
else {
cout << "Incorrect Username \a";
system("color 4");
_getch();
system("cls");
system("color f");
main();
}
}
//Console
int successfullogin()
{
string input;
input.clear();
cout << "MYCONSOLE: ";
getline(cin, input);
if (input == "shutdown")
{
return 0;
}
else
{
cout << "MYCONSOLE: " << input << endl;
_getch();
system("cls");
successfullogin();
}
return 0;
}
Не называйте 'main' рекурсивно, используйте * петли *. То же самое с функцией «успешного логания», используйте * петли *. –
Возможно, это может быть хорошей идеей показать неправильный вывод как часть вопроса – 4386427
Также избегать вызова 'успешного логарифма' рекурсивно – 4386427