Информатика и технология программирования


           

в файле могут быть довольно


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

int a;
long pos;
fseek(fd,0L,SEEK_END);
pos=ftell(fd);
fwrite((void*)&#38a, sizeof(int),1,fd);

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

a++;
fseek(fd,pos,SEEK_SET);
fwrite((void*)&#38a, sizeof(int),1,fd);

Если размерность переменной увеличится, то можно еще раз добавить ее в конец файла. Проблема утилизации получающихся свободных мест ("сбор мусора") достаточно сложна, чтобы рассматривать ее в простых примерах. В качестве наиболее удобного решения можно предложить периодическое переписывание всей структуры данных в новый файл (сжатие).


Содержание  Назад  Вперед





Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий