Я довольно новичок в программировании на C ++, и у меня возникли некоторые проблемы при чтении данных из текстового файла в массив структур. Я просмотрел похожие посты, чтобы попытаться найти решение, однако я не смог заставить его работать для меня и хотел попросить о помощи. Ниже приведен пример моего набора данных (P.S. Я буду использовать несколько наборов данных разных размеров):
00010 0
00011 1
00100 0
00101 1
00110 1
00111 0
01000 0
01001 1
Ниже мой код:
int variables = 5;
typedef struct {
int variables[variables];
int classification;
} myData;
//Get the number of rows in the file
int readData(string dataset)
{
int numLines = 0;
string line;
ifstream dataFile(dataset);
while (getline(dataFile, line))
{
++numLines;
}
return numLines;
}
//Store data set into array of data structure
int storeData(string dataset)
{
int numLines = readData(dataset);
myData *dataArray = new myData[numLines];
...
return 0;
}
int main()
{
storeData("dataset.txt");
То, чего я пытаюсь добиться, - это сохранить первые 5 целых чисел каждой строки текстового файла в массиве «переменных» в структуре «myData», а затем сохранить последнее целое число, разделенное пробелом, в «классификации» переменной, а затем сохранить эту структуру в массиве dataArray, а затем перейти к следующей строке.
Например, первая структура в массиве будет иметь переменные [00010], а классификация будет равна 0. Вторая будет иметь переменные [00011], а классификация будет равна 1 и т. Д.
Я был бы очень признателен за помощь, ура!