File_Lib.obj - библиотека работы с файловой системой.

Discussing libraries simplifying applications development
  • если возможно и рационально реализовать именно в этой библиотеке, то не помешали бы стандартные ф-ции ввода/вывода Си (fopen, fclose, fprintf, ...). можете считать это хотелкой...
  • Дело в том, что я не знаком с функциями, которые в Си - если есть подробное разжеванное описание, то можно учесть пожелание. Библиотека будет подключаться и вызываться подобно Box_Lib, так что проблем с использованием в ЯВУ не должно быть по идее. В самом ядре Колибри по идее нет такого явления как открыть и закрыть файл.

    З.Ы. Хотелки именно в таком ключе высказывать вполне правильно.
  • Оказалось, что толковых статей (на русском языке) по этой теме не так уж и много. Вот несколько, с которыми ИМХО следует ознакомиться...
    http://www.borland-academy.ru/courses/c ... 03.03.html
    http://ru.wikipedia.org/wiki/Файловый_в ... в_языке_Си
    http://ru.wikipedia.org/wiki/Stdio.h
    http://mymanual.narod.ru/programmist/cp ... gl_4_1.htm

    Структура FILE описана следующим образом (взято отсюда http://tigcc.ticalc.org/doc/stdio.html):

    Code: Select all

    typedef struct { 	char *fpos; /* Current position of file pointer (absolute address) */
    void *base; /* Pointer to the base of the file */
    unsigned short handle; /* File handle */
    short flags; /* Flags (see FileFlags) */
    short unget; /* 1-byte buffer for ungetc (b15=1 if non-empty) */
    unsigned long alloc; /* Number of currently allocated bytes for the file */
    unsigned short buffincrement; /* Number of bytes allocated at once */
    } FILE;

    Функция fprintf подобна printf из console.obj. Описание:
    http://ru.wikipedia.org/wiki/Printf
  • Есть предложение добавить твои функции в libio вместо создания новой библиотеки. Больше по существу пока что ничего.
    in code we trust
  • Предложение интересное, но есть пара моментов которые меня не воодушевляют. Во-первых, документации даже пользовательской нет (исходники типа Тинипада - не самая понятная документация, помнится я очень долго разбирался с libini), во-вторых стиль кода очень сильно отличается, что опять же затрудняет мое понимание. Я подумаю, спасибо за предложение.
  • Набросал немного документации по libio. Пока что только на английском, так как легче (практически вся информация взята из комментариев в исходном коде, которые таки на английском). Лежит тут: http://wiki.kolibrios.org/wiki/Libs-dev.
    in code we trust
  • Извините за нескромный вопрос (да, я ленивый человек и в коде мне лазить неохота), но:
    - А функции библиотеки libio типа stdcall? Или параметры передаются через регистры?
  • Они stdcall. Из описаний видно, что используется макрос proc, а в конце статьи есть пример.
    in code we trust
  • спасибо. до конца-то я и не дочитал :) а насчёт proc я мог и ошибаться.
  • Подправил немного документацию, перевёл на русский. Читайте на здоровье :)
    in code we trust
  • Давно ждал документацию. Во многом разобрался сам (на исходниках), но это же не дело, когда для использования библиотеки нужно разбираться в её исходниках. Теперь прикладникам будет легче писать программы. Спасибо Майк!
  • mike.dld
    Спасибо.
  • mike.dld
    Спасибо!
  • Who is online

    Users browsing this forum: No registered users and 5 guests