我现在真的很挣扎,原本有eclipse本身的其他问题,似乎已经解决了。代码看起来对我来说(与用于加载文件的示例代码相比),但是我无法加载任何内容,因为我放入的错误始终被触发。没有建筑错误atm。我究竟做错了什么?试图同时使用eclipse(mac)和Code :: blocks(win vm),两者似乎都有问题。数据文件本身与.cpp文件位于同一文件夹中。无法打开文件C++
#include <iostream>
#include <string>
#include <math.h>
#include <fstream>
using namespace std;
int main() {
cout << "Choose which data file to load (1-4)" << endl;
int file;
cin >> file;
ifstream data;
switch (file) {
case 1:
data.open("dataSet1.txt");
case 2:
data.open("dataSet2.txt");
case 3:
data.open("dataSet3.txt");
case 4:
data.open("dataSet4.txt");
}
if (!data) {
cerr << "File not Loaded" << endl;
return -1;
}
string FullData[61];
for (int i=0; i=60; i++){
data >> FullData[i];
cout << FullData[i] << endl;
}
return 0;
}
编辑:得到了程序停止显示错误,它似乎被加载的文件,但是我分配/显示循环似乎没有现在的工作,因为它只会显示最后一个数据点上并重新开始。
这样写的文件需要与_executable_相同的文件夹中,而不是.cpp – Nacho
您是否故意将'break'语句退出? – callyalater
我不确定它是否会导致失败,但在任何情况下,除了“4”,您将多次调用在流上打开而不关闭流。 – NathanOliver