Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 10 декабря!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

ПРОГРАММИРОВАНИЕ НА C и С++



Слушай, дружище, зачем так мучиться с этим языком С++, ты ведь не Билл Гейтс. Возьми тот же Python и программируй, он кроссплатформенный, под Windows тоже работает. Я сам давно заметил: то что на Си пишешь в страницу кода, на питоне решается в одну-две строки. При том, питон намного проще, я его сам недавно изучил по видеокурсу вот этому. Кстати, автор отлично там объясняет. Буквально день-два и уже будешь писать на нём, чего не скажешь про сложный С++.

fdopen

 
 Функция            Связывает поток с логическим номером файла.
 
 
 
 Синтаксис          #include<stdio.h>
 
                    FILE * fdopen(int handle, char * type);
 
 
 
 Файл, содержащий   stdio.h
 
 прототип
 
 
 
 Описание           Функция fdopen  связывает  поток  с   дескриптором,
 
                    полученным функциями creat, dup, dup2 или open. Тип
 
                    потока должен совпадать с режимом,  в  котором  был
 
                    открыт handle.
 
 
 
                    Символьная строка  type  имеет  одно  из  следующих
 
                    значений:
 
 
 
                    r - Открытие файла только для чтения.
 
 
 
                    w - Создание файла для записи.
 
 
 
                    а - Присоединение; открытие для записи в конец
 
                        файла или создание для записи, если файл не
 
                        существует.
 
 
 
                    r+ - Открытие существующего файла для обновления
 
                         (чтения и записи).
 
 
 
                    w+ - Создание нового файла для изменения.
 
 
 
                    a+ - Открытие для присоединения; открытие (или
 
                         создание, если   файл   не   существует)   для
 
                         обновления в конец файла.
 
 
 
                    Если данный  файл  открывается  или   создается   в
 
                    текстовом  режиме,  вы  можете приписать символ t к
 
                    значению  параметра  type  (rt,   w+t,   и   т.д.);
 
                    аналогично,  для  спецификации  бинарного режима вы
 
                    можете к значению параметра type добавить символ  b
 
                    (wb,a+b, и т.д.).
 
 
 
                    Если в  параметре type отсутствуют символы t или b,
 
                    режим  будет  определяться  глобальной   переменной
 
                    _fmode.   Если  переменная  _fmode  имеет  значение
 
                    O_BINARY,  файлы  будут  открываться   в   бинарном
 
                    режиме,  иначе,  если _fmode имеет значение O_TEXT,
 
                    файлы  открываются  в  текстовом   режиме.   Данные
 
                    константы O_... определены в файле fcntl.h.
 
 
 
                    При открытии  файла  в  режиме обновления (UPDATE),
 
                    над  результирующим  потоком  stream   могут   быть
 
                    выполнены как операции ввода,  так и вывода. Тем не
 
                    менее вывод не может следовать  непосредственно  за
 
                    вводом  без вмешательства функций fseek или rewind.
 
                    Также ввод, без применения функций fseek, rewind не
 
                    может  непосредственно  следовать  за  выводом  или
 
                    вводом, который встречает конец файла (EOF).
 
 
 
 Возвращаемое       При успешном завершении fdopen  возвращает
 
 значение           заново открытый поток stream. В случае ошибки,
 
                    функция возвращают ноль (NULL).
 
 
 
 Переносимость      fdopen поддерживаeтся на системах UNIX.
 
 
 
 Смотрите также     Функции  fclose, freopen, fopen, opene.
 
 
 
 Пример:
 
 
 
 #include<sys\stat.h>
 
 #include <stdio.h>
 
 #include <fcntl.h>
 
 #include<io.h>
 
 
 
 int main(void)
 
 {
 
    int handle;
 
    FILE *stream;
 
 
 
    /* открыть файл */
 
    handle = open("DUMMY.FIL", O_CREAT, S_IREAD|S_IWRITE);
 
 
 
    /* теперь преобразуем его в поток */
 
    stream = fdopen(handle, "w");
 
    if (stream == NULL)
 
       printf("Ошибка fdopen\n");
 
    else {
 
       fprintf(stream, "Hello, world\n");
 
       fclose(stream);
 
    }
 
    return 0;
 
 }

<< ВЕРНУТЬСЯ В ПОДРАЗДЕЛ

<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ




Материалы находятся на сайте https://exelab.ru/pro/



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS