0
我想读一个txt文件的内容,并将其保存到一个数组,但是这没有被正确读取/保存到我的数组正确:INFILE C++没有被正确读取
这里的data.txt :
a
b
c
下面是main.cpp中:
#include <iostream>
#include <fstream>
using namespace std;
void readin(string file);
int main(){
readin("data.txt");
}
void readin(string file){
int myarr[10];
ifstream infile;
infile.open(file);
if(infile.fail()){
cerr << "Input file failed to open.";
abort();
}else{
infile >> myarr[0] >> myarr[1] >> myarr[2];
cout << "myarr[0]" << "\t" << myarr[0] << endl;
cout << "myarr[1]" << "\t" << myarr[1] <<endl;
}
infile.close();
}
这里是我的结果被输出作为什么:
myarr[0] 0
myarr[1] 32767
它需要一些额外的努力来说服'''将a解析为'int'。读取失败,Crom只能知道坐在'myarr'中的什么。读取后检查输入流的状态,以确保程序正确读取。例如:'if(infile >> myarr [0] >> myarr [1] >> myarr [2]){//很好。打印的东西}其他{/ /不好。处理错误}' – user4581301