3 / 3 / 1
Регистрация: 14.02.2015
Сообщений: 23
1

Как осуществить загрузку двунаправленного связанного списка из файла?

07.03.2015, 23:02. Показов 679. Ответов 1
Метки нет (Все метки)

имеется функция записи(естественно Employer это структура)
C
1
2
3
4
5
6
7
8
9
10
11
void savelist(Employer *p, char* fname)
{
    FILE *pf;
    fopen_s(&pf, fname, "wb");
    while (p != NULL)
    {
        fwrite(p, sizeof(Employer),1,pf);
        p = p->pnext;
    }
    fclose(pf);
}
и функция добавления в конец списка
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Employer* addEnd(Employer* p,Employer *end)
{
    Employer *pAdd = (Employer*)malloc(sizeof(Employer));
    if (pAdd == NULL) printf("ERROR!!!");
    *pAdd = *p;
    if (end == NULL) end = pAdd;
    else
    {
        end->pnext=pAdd;
        pAdd->pprev = end;
        end = pAdd;
    }
    return end;
}
Как осуществить загрузку двунаправленного связанного списка из файла? у меня получается загрузить только 1 элемент и ,то,если список существует

Добавлено через 9 часов 6 минут
получилось написать код который загружает все элементы,но только если список существует,если списка нет ничего не загружает
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Employer* loadlist(Employer *p, char* fname, Employer * end)
{
 
    FILE * pf;
    Employer* buf = (Employer*)malloc(sizeof(Employer));
    fopen_s(&pf, fname, "rb");
        while (buf->pnext != NULL){
            fread(buf, sizeof(Employer), 1, pf);
            end = addEnd(buf, end);
            buf->pprev = end;
 
    }
    fclose(pf);
    return end;
}
подскажите где проблема?

Добавлено через 26 минут
видимо скоро уже сам додумаюсь получилось чтобы загружал список из файла,когда списка еще не существует,проблема была в самом вызове,но почему-то со 2 раза,чтобы загрузить нужно загружать 2 раза . В чем беда?
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    switch (n)
    {
    case 1: 
     .................
    case 4:
        if (begin == NULL) {
            begin=end;
            end = loadlist(begin, "list.dat", end);
        }
        else {
            end = loadlist(begin, "list.dat", end);
        }
        break;
    ...........................
    case 7:exit(0); break;
    }

Не по теме:

какой-то монолог получается

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.03.2015, 23:02
Ответы с готовыми решениями:

Как осуществить загрузку файла на сервер по заданному пути
Подскажите пожалуйста как написать на VB 2010 загрузку файла на сервер по заданному пути. Есть...

Как осуществить загрузку картинки или файла на хостинг, используя WebBrowser
Кто может подсказать как осуществить загрузку на хостинг(или любой другой сайт, куда можно заливать...

Как ускорить загрузку списка ListBox из txt-файла?
У меня на главной форме 5 компонентов ListBox. В каждый из них загружаются данные из txt-файлов...

Не получается осуществить загрузку файла на FTP сервер
Доброго времени суток. Сразу к делу. Пишу программу, которая должна при запуске создать текстовый...

1
3 / 3 / 1
Регистрация: 14.02.2015
Сообщений: 23
12.03.2015, 09:16  [ТС] 2
ну никто не знает что ли?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.03.2015, 09:16
Помогаю со студенческими работами здесь

Чтение двунаправленного списка из файла
Как организовать, учитывая, что у меня есть type TStudentPtr = ^TStudent; // Это указатель на...

Каким образом можно осуществить загрузку файла из интернета по url ?
Каким образом можно осуществить загрузку файла из интернета по url ? Мне бы хотелось конечно...

Как осуществить загрузку данных из Excel в 1С?
Здравствуйте! Имеется файлы с данными в excel и программа созданная в 1С. Как загрузить данные из...

Как осуществить загрузку файлов на сервер cgi?
Учусь писать сервер на python. Освоил простую обработку полей для ввода текста. Теперь встал...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru