Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Показать сообщение отдельно
obZen
1 / 1 / 1
Регистрация: 11.03.2011
Сообщений: 22
0

Функция fseek

11.03.2011, 14:54. Просмотров 1948. Ответов 6
Метки (Все метки)

Здраствуйте! Пишу сейчас телефонную книгу. Точнее что-то наподобие этого.
Появилась проблема. Мне необходимо из файла, в который раннее были поблочно занесены контакты, прочитать контакт с заданным номером(порядковым). Чтобы узнать кол-во байт, на которое необходимо передвинуть указатель использую цикл, в котором складываю размеры елементов массива(из которого раннее производилась запись в файл). Так вот до 4-го элемента все впорядке. Если пробую считать от 5-го, сумма байтов выходит не корректная, следовательно и запись читается неправильно. Всего 10 записей: с 5й по 9ю не получается прочитать. Размер всех записей разный.

Уточнение: student - структура. Массив А типа student.

Возможно ли другим способ узнать размер блоков, которые необходимо "перепрыгнуть"?

C++
1
2
3
4
5
6
7
8
9
10
11
    int num;
    cin >>num;
    int size=0;
    for (int i=0; i<num; i++)
    {
        size=size+sizeof(A[i]);
    }
    student st;
    out = fopen("students.txt", "rt");
    fseek(out, size, 0);
           fread(&st, 1, sizeof(st), out);


Вернуться к обсуждению:
Функция fseek
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.03.2011, 14:54
Готовые ответы и решения:

fseek / fread
Всем привет! Такой вопрос возник. Есть строка, состоящая из нескольких...

fseek вылетает
#include &lt;stdio.h&gt; #include &lt;windows.h&gt; char *filename; long size; File...

fseek не работает
Нужно записать данные в структурированный текстовый файл. Проблема заключается...

fseek для ab
Нигде не могу найти работает ли fseek для режима ab??? или у аb статически...

Fseek и структуры
Добрый день,не могу разобраться с fseek в структурах / Нужно сделать запрос...

6
Другие темы раздела
C++ Найти в каждой строке наибольший элемент и поменять его местами с элементом главной диагонали http://www.cyberforum.ru/cpp-beginners/thread255405.html
Двумерные массивы, условие в заголовке! Заранее спасибо)
C++ Удобнее Подскажите пожалуйста билдер для С, чтобы удобнее был (вот на паскале, например, я использовал не TurboPascal, а Pascal ABC) http://www.cyberforum.ru/cpp-beginners/thread255356.html
Библиотеки C++ функций для преобразования файлов- картинок C++
Не подскажите, какие лучше использовать библиотеки для работы с картинками BMP, JPG, GIF, PNG (желательно с исходными кодами) ?
Любимые бинарные деревья. C++
Доброго времени суток. появилась проблема с решением задачи. собсна задача: "найти количество отрицательных узлов в левом и правом поддереве и сравнить их." функция должна быть int-овская. и...
C++ Слово чемпион о_О http://www.cyberforum.ru/cpp-beginners/thread255345.html
Задано некоторое предложение на неизвестном языке. Назовем слово в нем чемпионом, если оно является палиндромом и количество букв в нем максимально. Буквами алфавита в неизвестном языке являются...
C++ Ответ на вопрос по С++ определение объединения (union), синтаксис, назначение спасибо подробнее
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru