Я написал код в С++. Он считывает данные из файла CSV, а затем просто печатает вторую строку на экране:
vector<string> readCsvFileContent()
{
vector<string> buffer;
try {
ifstream inputFile;
string line;
inputFile.open("Input.csv", static_cast<std::ios::openmode>(std::ios::in) );
while (getline(inputFile,line)) {
buffer.push_back(line);
}
inputFile.close();
}
catch (ifstream::failure e) {
cout<<"No file read"<<endl;
throw e;
}
return buffer;
}
Эта функция вызывается следующим образом:
cout << "reading from file" << endl;
vector<string> inputData = readCsvFileContent();
cout << inputData.size() << endl;
cout << inputData[1] << endl;
Когда он запускается в отладке, он отображает, что ему нужно:
[ 50%] Building CXX object src/CMakeFiles/version1.dir/version1.cc.o
Linking CXX executable version1
[ 50%] Built target version1
[100%] Generating House1.csv
reading from file
322274
"2014-07-01 00:00:06",155,0,0,0,NULL,0,0,0,0,NULL
[100%] Built target process_csv
Но когда я запускаю свой код, я получаю:
reading from file
0
Segmentation fault (core dumped)