Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция2013.docx
Скачиваний:
11
Добавлен:
31.03.2015
Размер:
72.11 Кб
Скачать

1.3.3.2. Функция fclose(). Закрытие потока.

Функция fclose отделяет указанный поток stream от связанного с ним файла или набора функций. Если поток использовался для вывода данных, то все данные, содержащиеся в буфере, сначала записываются с помощью fflush(). 

При успешном завершении возвращается нулевое значение.

1.3.3.3. Функция fflush(). Сброс буферов потока.

Функция fflush принудительно записывает все буферизированные данные в устройство вывода данных или корректирует поток stream посредством определенных для него функций записи. При этом поток остается открытым.

Если аргумент stream указывает на NULL, то fflush "сбрасывает" данные всех потоков, открытых выводящим данным.  При обычном завершении работы возвращается нулевое значение.

1.3.3.4. Функции getc() и gets(). Считывание символа и строки из потока.

getc() считывает очередной символ из потока stream 

getchar() эквивалентна getc(stdin).

gets() считывает строку из stdin и записывает ее в буфер, на который указывает s, пока не встретится символ новой строки или EOF, которые заменяются значением '\0'. Проверка на переполнение буфера не производится.

gets() и fgets() возвращают s при удачном завершении операции и NULL при ошибке или если достигнут конец файла, а символы остались несчитанными.

1.3.3.5. Функции putc() и puts(). Запись символа и строки в поток.

putc() выводит символ c, приведенный к виду unsigned char, в поток stream. putchar(c); полностью эквивалентна putc(c,stdout).

puts() записывает строку s и завершающий перевод строки в stdout.

1.3.3.6. Функции fread() и fwrite(). Ввод/вывод для бинарного файла.

Функция fread считывает элементы данных nmemb (с размером каждого size байтов) с потока, на который указывает stream, и сохраняет их в позиции, на которую указывает ptr.

Функция fwrite записывает элементы данных nmemb (с размером каждого size байтов) в поток, на который указывает stream, при получении элементов с той позиции, на которую указывает ptr.  

fread и fwrite возвращают количество элементов, успешно считанных или записанных (то есть не количество символов)

1.3.3.7. Функция fseek(). Смена положения операции в потоке.

Функция fseek устанавливает позицию следующей операции ввода/вывода в потоке, на который указывает аргумент stream. Новая позиция получается прибавлением смещения offset байтов к начальной позиции, определяемой параметром whence. Если whence определяется как SEEK_SET, SEEK_CUR или SEEK_END, то смещение будет относиться к началу файла, текущей позиции указателя или концу файла соответственно.

1.3.3.8. Функции printf() и fprintf(). Вывод данных с преобразованием формата.

Функции семейства printf выводят данные в соответствии с параметром format.

fprintf направляет данные в заданный поток вывода stream

При успешном завершении работы эти функции возвращают количество напечатанных символов.

%d

целое десятичное число типа int (d - от decimal)

%lf

вещ. число типа double (lf - от long float)

%c

один символ типа char

%s

ввод строки. Из входного потока выделяется слово, ограниченое пробелами или символами перевода строки '\n'. Слово помещается в массив символов. Конец слова отмечается нулевым байтом.