今天刚刚开始学习C++,我很惊讶。其惊人的语言,但遇到了一些麻烦IM覆盖文件非常简单的io问题C++
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
double payIncrease = 7.6;
double annual;
double annualIncrease;
double newAnnual;
double monthlyIncrease;
double newMonthly;
ifstream inStream;
ofstream outStream;
//继承人问题所在
inStream.open("annualSalary.txt");
outStream.open("newAnnualSalary.txt");
如果我改变newAnnualSalary.txt到annualSalary.txt我得到了一些非常奇怪的数字。 有谁知道为什么?
inStream >> annual;
inStream.close();
double monthly = (annual/12);
annualIncrease = ((annual/100)*payIncrease);
monthlyIncrease = ((monthly/100)*payIncrease);
newMonthly = (monthly + monthlyIncrease);
newAnnual = (annual + annualIncrease);
outStream <<"annual salary was: "<< annual << "\n" ;
outStream <<"new annual salary is " << newAnnual << "\n ";
outStream <<"new monthly salary is " << newMonthly <<"\n ";
outStream.close();
return 0;
}
IM意识到这是一个非常低技术水平的问题,但我刚学。
“奇怪的数字”是什么意思? – Jess 2010-09-16 15:22:23
它可能是因为你试图打开annualsalary.txt两次,一次入站和一次出站。尝试_not_打开您要覆盖的文件,直到您关闭它(即将outStream.open命令放入inStream.close命令后)以查看是否有帮助。 – 2010-09-16 15:26:11
@Michael,外流正在打开newAnnualSalary.txt。他很好去:) – jlafay 2010-09-16 15:27:22