прочитать текстовый файл в отсортированный связанный список Переполнение стека

только начал узнавать о связанном списке и должен сделать OOP читать, сортировать и отображать некоторые файлы.

Вот формат текстового файла:

20
john
adam
george
.
.
.

первое число — это число имен, включенных в текстовый файл, и каждая следующая строка имеет имя.

Вот мой main.cpp

#include "ListClass.h"#include <iostream>
#include <fstream>
#include <string>using namespace std;int main()
{
//declaring class
ListClass name;
string file;
char holder[256];

cout<<"Please enter the data file to be read: "<<endl;
cin>>file;

//input the data file
ifstream myIn;
myIn.open(file.c_str());

//reading each line and perform functions
myIn>>number;
myIn.ignore(256,'\n');

while(myIn.peek()!=EOF)
{
myIn.getline(holder, 256, '\n');
nameRec.name=holder;

readFile(nameRec.name);
display();

}

myIn.close();

return 0;
}

и вот файл .h:

#include <string>
using namespace std;

#ifndef LISTCLASS_H
#define LISTCLASS_H

struct record
{
// name
string name;
};
typedef record nameRec;

struct node
{
nameRec data;
node* next;
};
typedef node nodeType;
typedef node* nodeTypePtr;class ListClass
{
public:

ListClass();
ListClass(const ListClass&L);
~ListClass();

void readFile();
void insert();
void display();
void search();
void checkList();
int listLength();

private:

int number=0;

nodeTypePtr head;

};
#endif

и моя реализация .cpp

 #include "ListClass.h"
using namespace std;

//default constructor
ListClass::ListClass()
{
head=NULL;
}

ListClass::ListClass(const Class& L)
{
if(L.head==NULL)
head=NULL;
else
{
head=new node;
assert(head!=NULL)
head->item=L.head->item;
}
void ListClass::readFile(nameRec.name)
{
nodeTypePtr prev, curr;
nodeTypePtr newNode;
newNode= new node;
assert(newNode);
newNode->nameRec.name;

prev=head;
curr=head;

while ((curr!=NULL)&&(curr->cityRec.name))
{
prev= curr;
curr= curr->next;
}
if (curr==head)
{
newNode->next=head;
head=newNode;
}
else
{
newNode->next=curr;
prev->next=newNode;
}

void sortedListClass::display()
{
for (nodePtrType cur=head; cur!=NULL;cur=cur->next)
cout<<cur->data.name<<endl;
}

Я довольно новичок в программировании, поэтому могу ошибаться. Я просто хотел бы знать, как прочитать файл в связанный список, предпочтительно в отсортированный связанный список, а затем отобразить его.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]