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