【发布时间】:2021-01-03 21:35:39
【问题描述】:
我试图简单地将文件“input.txt”读入数组 people[]。 txt文件有3个数字:
10
20
30
对于人[0],我得到 -9.25596e+61 而不是 10。这是我的代码:
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
class Trip {
private:
double people[3];
public:
void readFile(string file);
};
void Trip::readFile(string file) {
ifstream input;
input.open(file);
input >> people[0] >> people[1] >> people[2];
cout << people[0];
input.close();
}
int main() {
Trip trip;
trip.readFile("input.txt");
return 0;
}
【问题讨论】:
-
您应该检查文件是否实际打开,或者
cin是否因任何原因失败。 -
提示:在 C++ 中使用
std::vector而不是 C 风格的固定长度数组。 -
总是,总是检查文件是否成功打开。这显然不是你的情况。最可能的原因是程序在与您放置文件的位置不同的地方寻找 input.txt。
标签: c++ arrays file visual-c++