- Описание структуры:
struct <имя_структуры> {
<тип_данных> <имя_поля>; } - Выделение блока динамической памяти для хранения данных;
<имя_структуры> * ptr = new <имя_структуры>; // Для одного объекта
<имя_структуры> * array_ptr = new <имя_структуры> [size]; // Для массива объектов - Соединение файла с потоком:
#include <fstream>
ifstream input_file ("имя_файла", ios::binary); // Поток для чтения
ofstream output_file ("имя_файла", ios::binary); // Поток для записи
fstream file ("имя_файла", ios::in | ios::out | ios::binary); // Поток для чтения и записи - Режимы доступа (флаги):
ios::in // Открыть для чтения
ios::out // Открыть для записи (с очисткой файла)
ios::app // Открыть для добавления в конец s
ios::binary // Открыть в бинарном режиме (важно для структур) - Запись и чтение структур (бинарный режим):
output_file.write (reinterpret_cast <char*> (ptr), sizeof (<имя_структуры>));
input_file.read (reinterpret_cast <char*> (ptr), sizeof (<имя_структуры>)); - Освобождение памяти:
delete ptr; // Для одного объекта
delete [] array_ptr; // Для массива объектов
Информатика • 11 класс
745
Использование файлов, содержащих структурные данные (C++)
Было полезно?
Рекомендуем
Вы учитель или ученик?
Познакомьтесь с нашим образовательным онлайн-сервисом с тысячами интерактивных работ
Учителю
Удобно проводить уроки в классе, назначать работы на дом и анализировать результаты всего класса или конкретных учеников
Ученику
Самостоятельно изучать новые и повторять пройденные темы, готовиться по индивидуальной траектории и оценивать результаты на наглядных графиках