C ++不从文本文件中读取值到数组中

时间:2014-08-05 23:17:24

标签: c++ arrays

我一直在尝试将文本文件中的值读入2个数组,但是我的namesscores数组中没有任何内容。这就是我所拥有的:

const int size = 6;
int names[size] = { 0 };
int scores[size] = { 0 };
int name;
ifstream inputFile;
inputFile.open("input.txt"); //opens up textfile

inputFile >> name;
while (!inputFile.eof()){
    inputFile >> names[x] >> scores[x];
    cout << names[x] << scores[x];
    x++;
}

input.txt中

6
Alice 50
Bob 100
Cathryn 75
Don 90
Emily 80
Flora 60
George 95

name的值为6,但namesscores没有任何结果。关于什么是错的任何想法?

1 个答案:

答案 0 :(得分:2)

您的程序无法正常工作,因为您不小心将names初始化为数组类型int,而不是类型std::string。这会打破整行inputFile >> names[x] >> scores[x];

愚蠢的错误。只需创建一个名为std::string的{​​{1}}的数据结构,并将内容放入其中。