Я пытался создать банковскую программу на C++, где вы можете просмотреть сумму денег в кошельке и на своем банковском счете, а также внести и снять деньги. когда я пытаюсь запустить его, он позволяет мне вводить, но когда я вводил что-либо, он повторяет Money in Wallet: 20
снова и снова, пока не получаю переполнение стека, которое, как я думал, было довольно ироничным, размещая его на веб-сайте Stack Overflow.C++ Bank program не работает переполнение стека
Это мой код до сих пор:
#include <iostream>
using namespace std;
float money= 20.00;
float account=100.00;
float amount;
bool cmd;
void wallet()
{
cout<<"Money in Wallet: "<<money<<endl;
}
void bank()
{
cout<<"Money in Bank: "<<account<<endl;
}
void deposit()
{
cout<<"How much do you want to deposit?: ";
cin>>amount;
if (money>=amount)
{
account = account+amount;
money = money-amount;
}
else
{
cout<<"You don't have enough money!\n";
}
}
void withdraw()
{
cout<<"How much do you want to withdraw?: ";
cin>>amount;
if(account>=amount)
{
money = money+amount;
account = account-amount;
}
else
{
cout<<"There isn't enough money in your bank account!\n";
}
}
void prompt()
{
cmd="null";
cout<<">";
cin>>cmd;
if (cmd="wallet")
{
wallet();
cmd="null";
prompt();
}
else{
cout<<"Unknown Command.";
cmd="null";
prompt();
}
if (cmd="bank")
{
bank();
}
else{cout<<"Unknown Command.";}
if (cmd="deposit")
{
deposit();
}
else{cout<<"Unknown Command.";}
if (cmd="withdraw")
{
withdraw();
}
else{cout<<"Unknown Command.";}
}
int main()
{
prompt();
}
Пожалуйста, помогите!
почему каждый профессор в мире назначать своих студентов CS 101 разработать банк? Я надеюсь, что это не так, как был создан бэкэнд моего банка. –
Если вы сделали шаг с отладчиком, вы найдете его примерно через 30 секунд. – Rob
Возможно, вы либо чередовали бесконечно, либо рекурсивно вызывали функцию бесконечно. Почему бы вам не попробовать пройти через него с помощью отладчика, чтобы узнать, где проблема? – derpface