или
Заказать новую работу(фрагменты работы)
Учебное заведение: | Другие города > ДРУГОЕ |
Тип работы: | Лабораторная работа, Ответы |
Категория: | Информационные технологии, Программирование |
Год сдачи: | 2020 |
Количество страниц: | 9 |
Оценка: | 5 |
Дата публикации: | 06.05.2020 |
Количество просмотров: | 837 |
Рейтинг работы: |
Цель работы:
- Приобретение навыков работы с текстовыми и двоичными файлами
- Освоение передачи информации в программу через аргументы
функции main()
В работу входит 2 кода выполненных задач на тему "Файлы", один из которых на языке C, а другой на C++
Ответы на контрольные вопросы, вывод.
(фрагменты работы)
if (strcmp(so1.fam, so2.fam) > 0) // сравнение фамилий
{
writekur1 = f1d.tellg(); /////
writekur1 = writekur1 - sizeof(so1); //
f1d.seekg(writekur1, ios::beg); //
f1d.read((char*)&so1, sizeof(so1)); // Если у фамилии в so2 первая буква оказывается ближе к началу алвафита, чем у so1..
f1d.read((char*)&so2, sizeof(so2)); // ..тогда считываем структуру находящуюся в so2 в so1, а в so2 считываем следующую за ней структуру..
writekur2 = f2d.tellg(); // ..и так для обоих файлов, при этом записываем в переменную writekur1 и writekur2..
writekur2 = writekur2 - sizeof(sx1); // ..положение указателя перед структурой so1
f2d.seekg(writekur2, ios::beg); //
f2d.read((char*)&sx1, sizeof(sx1)); //
f2d.read((char*)&sx2, sizeof(sx2)); /////
}
else
{
f1d.read((char*)&so2, sizeof(so2)); // Если у фамилии so1 первая буква оказывается ближе к началу алфавита, чем у so2..
f2d.read((char*)&sx2, sizeof(sx2)); // ..тогда просто считываем новые данные в so2 и sx2 для дальнейшего сравнения
}
flag++; // увеличиваем флаг в случае работы цикла (если изначально не достигнут конец файла)
Похожие работы