Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.01.2012, 14:05   #1
pinkiller
Форумчанин
 
Регистрация: 29.10.2011
Сообщений: 141
По умолчанию Вопрос про запись данных в файл.

1 шаг. Я создаю файл
2 шаг. инициализирую объекты и присваиваю им значение с клавиатуры
3 шаг. создаю список. список содержит в себе только указатель на первый элемент списка и функции. сами объекты не содержит(!).
4 шаг. идя по указателям от первого к последнем элементу записываю их в двоичный файл вместе с адресами элементов.
5 шаг. извлекаю из двоичного файла первый элемент, пытаюсь перейти по указателю к следующему элементу списка, а там уже записано что то новое, т.к "переменные существую пока работает программа или функция в которой они объявлены"

Вопрос. Как мне едрить его налево записать в файл списковую структуру, хранящую данные?
pinkiller вне форума Ответить с цитированием
Старый 05.01.2012, 14:10   #2
_Bers
Старожил
 
Регистрация: 16.12.2011
Сообщений: 2,329
По умолчанию

Цитата:
Сообщение от pinkiller Посмотреть сообщение
1 шаг. Я создаю файл
2 шаг. инициализирую объекты и присваиваю им значение с клавиатуры
3 шаг. создаю список. список содержит в себе только указатель на первый элемент списка и функции. сами объекты не содержит(!).
4 шаг. идя по указателям от первого к последнем элементу записываю их в двоичный файл вместе с адресами элементов.
5 шаг. извлекаю из двоичного файла первый элемент, пытаюсь перейти по указателю к следующему элементу списка, а там уже записано что то новое, т.к "переменные существую пока работает программа или функция в которой они объявлены"

Вопрос. Как мне едрить его налево записать в файл списковую структуру, хранящую данные?
сохраняй описание структуры данных, и значения объектов.
_Bers вне форума Ответить с цитированием
Старый 05.01.2012, 14:17   #3
pinkiller
Форумчанин
 
Регистрация: 29.10.2011
Сообщений: 141
По умолчанию

Что значит описание структуры данных, можешь уточнить? ><
pinkiller вне форума Ответить с цитированием
Старый 05.01.2012, 14:26   #4
_Bers
Старожил
 
Регистрация: 16.12.2011
Сообщений: 2,329
По умолчанию

Цитата:
Сообщение от pinkiller Посмотреть сообщение
Что значит описание структуры данных, можешь уточнить? ><
Список, дек, вектор - не важно. Все это - контейнеры, которые по разному хранят набор своих элементов.

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


Допустим, у тебя в контейнере есть три элемента типа int : 1,2, 3;

Ты просто тупо сохраняешь в файла все три элемента в бинарном режиме.
Получится файл длиною в sizeof(int)*3

Зная что в файле хранятся только значения элементов, и что все они имеют тип инт - ты можешь определить сколько точно там элементов.
А зная, сколько точно там элементов, ты можешь создать заново свой контейнер на эти три элемента. А потом считывать элемент за элементом из файла и добавлять очередной значение в контейнер.

По итогу, после загрузки, в контейнере окажутся те же самые элементы, что были при сохранении. а фактические адреса элементов тебя мало волнуют.
_Bers вне форума Ответить с цитированием
Старый 05.01.2012, 15:57   #5
pinkiller
Форумчанин
 
Регистрация: 29.10.2011
Сообщений: 141
По умолчанию

Цитата:
информация о том как при загрузке данных из файла можно восстановить мой контейнер.
Как примерно это можно записать?
я вот записываю сколько то элементов типа Т.
n=sizeof(FILE)/sizeof(T);//количество записанных элементов в файл.
то как их читать мне надо записать в сам двоичный файл?
Или сделать в моей программе функцию как читать из такого файла?
pinkiller вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос наверное про функции, а так точно даже не знаю про что. (Вопрос начинющего #6) Albert2008 Общие вопросы Delphi 4 21.08.2008 15:33
У меня вопрос про базы данных,а точнее про таблицы!!! Alexij Общие вопросы Delphi 1 13.04.2008 23:24
запись данных в файл Артэс Общие вопросы C/C++ 13 09.06.2007 22:01