Djgpp, Файлы Больше 4 Гб

Тема в разделе "Общие вопросы по С и С++", создана пользователем tikser, 23 ноя 2014.

  1. tikser

    tikser New Member

    Регистрация:
    23 ноя 2014
    Сообщения:
    1
    Симпатии:
    0
    Добрый день, коллеги!

    Есть необходимость работать с большими файлами под DJGPP.
    В файле DIR.H есть две структуры: ffblk и ffblklfn. Первая всем привычна и заполняется функциями findfirst/findnext.
    У нее есть один недостаток: поле размера файла 32-битное, то есть если размер файла более 4 Гб, то оно содержит неверные данные.
    Вторая структура несколько странная: в ней есть переменные типа (long long) - 64 битные, предназначенные для хранения времени создания и измеения файла, а вот для хранения размера файла почему-то есть две переменные типа (unsigned long) - 32 битные: fd_sizehi и fd_size.
    Можно было бы понять, если бы на части был разбит штамп времени: отдельно часы, отдельно минуты, отдельно годы...
    Но я не очень понимаю, зачем именно размер файла, число по определению единое, разбивать на две части.
    Возможно, это связано с трудностями вывода (кто-нибудь знает, как корректно вывести long long с помощью printf?), но главный вопрос в другом.
    Как воспользоваться возможностями, которые предоставляет ffblklfn?
    Есть ли другие способы получить корректную информацию о размере файла, выходящем за границу 4 Гб?
    На всякий случай уточню, что речь идет всё еще именно о DJGPP.

    Заранее спасибо!
    Tikser
     
Загрузка...
Похожие Темы - Djgpp Файлы Больше
  1. lmike
    Ответов:
    27
    Просмотров:
    239
  2. garrick
    Ответов:
    25
    Просмотров:
    655
  3. sgfsdg
    Ответов:
    1
    Просмотров:
    423
  4. vovanabali
    Ответов:
    0
    Просмотров:
    531
  5. anatoliygorbunov
    Ответов:
    1
    Просмотров:
    742

Поделиться этой страницей