C ++将dat.file读入vector

时间:2017-04-12 14:23:50

标签: c++

我正在尝试将dat文件读入矢量 数据是连续5列和400列 但是,它导致cygwin_exception :: open_stackdumpfile:将堆栈跟踪转储到....

#include <iostream> 
#include <stdio.h>
#include <fstream>
#include <vector>
using namespace std; 

int main() { 

char line[40];
vector<double> vec[400];
#define DEMENSION 5
ifstream file ("train.dat", ios::in);


//file.open("train.dat",ios::in);

int i=0,l=1;
double tmp;

 while(!file.eof()){
    //vec.push_back(l);
    vec[i].push_back(l);

    for(int j = 0; j < DEMENSION; j++) {
        file >> tmp;
        vec[i].push_back(tmp);
    }
    cout << vec[i].size()<< endl;
    i++;

} 
cout<<i<<endl;

//file.close();
for(int iy; iy < 400; ++iy){
    vector<double>:: iterator iter = vec[iy].begin();
    for(int ix = 0; iter != vec[iy].end(); ++iter, ++ix){
         cout << *iter<<" " ;
        }
        cout<<endl;
 }



 return 0; 
}

但是如果我将尺寸更改为6,它就可以了。 然后向量导致连续7个数字(一个数字由我添加),只留下344列, 这不是我想要的......如果尺寸正确设置为5,那么它应该是6个数字,

0 个答案:

没有答案