안녕하세요. 저는 간단한 임금 응용 프로그램을 작성 중입니다. 다음 코드는 switch 문을 사용하는 두 개의 옵션 메뉴를 포함합니다. 이 코드는 "shop-account"라는 텍스트 파일에도 연결됩니다. 파일에는 단순히 값 100이 포함됩니다.함수를 사용하여 파일에서 읽고 쓰는 중
옵션 1의 경우 사용자는 파일에서 금액을 전송할 수 있다고 가정합니다. 사용자는 계정을 과도하게 사용하지 않고 원하는만큼 많은 이전을 할 수 있어야합니다. 그리고 코드는 현재 잔액을 출력 할 수 있어야합니다. 나는 void 함수를 사용하고 있다고 생각하지만, 전에는 사용하지 않았고 정말 고심하고 있습니다. 나는 누군가가 코드를보고 내가 어디로 잘못 가고 있는지를 알기를 바랬다. 감사합니다
int read_balance (void);
void write_balance (int balance);
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
int selection;
int total;
int balance;
int NewAmount;
do {
cout << "1. Transfer an amount" <<endl;
cout << "2. Quit" << endl;
cout << "Please enter menu number"<<endl;
cin >> selection;
switch(selection)
{
case 1:
cout << "You have choosen to transfer an amount" << endl;
cout << "How much do you wish to transfer from the shop account?"<<endl;
cin >> NewAmount;
balance -= NewAmount;
write_balance (balance);
cout << balance << endl;
break;
case 2:
return 0;
break;
default:
cout << "Ooops, invalid selection!" << endl;
break;
}
}while(selection != 2);
system("pause");
return 0;
}
int read_balance (void)
{
fstream f;
f.open("shop-account.txt");
f >> balance; //error: "balance" is unidentified
f.close();
return balance;
}
void write_balance (int balance)
{
fstream f;
f.open("shop-account.txt");
f << balance;
f.close();
}
내가 코드를보고 잘못 생각한 부분을 알려주기를 바랍니다. 덕분에 –
도 도움이 찾고있는 유일한 조각은 실제로 파일에서 금액을 전송하는 방법입니다, 내가 이것을 이해하고 나면 나머지를 직접 시도하고 나머지를 할 것입니다. – user3057816
들여 쓰기가 누락되어 있으며 사실이 아닙니다. 컴파일 할 수있는 예제 계정이 "어디로 잘못 가고 있습니까?" - 당신의'read_balance'에서,'balance'는 어디에 있습니까? 아니. 함수에'int balance;'를 추가하십시오. – ShinTakezou