Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 7 (функции ввода-вывод).doc
Скачиваний:
8
Добавлен:
01.04.2025
Размер:
65.54 Кб
Скачать

3. Функции ввода и вывода символов

Эта группа функций ввода-вывода на самом деле реализована в виде макросов.

1) Макрос getc() возвращает следующий символ из заданного входного потока и увеличивает указатель входного потока так чтобы он указывал на следующий символ. В случае успеха getc() возвращает считанный символ, преобразованный в тип int без знака. Если прочитан конец файла или произошла ошибка, он возвращает EOF. Прототип этого макроса следующий:

int getc(FILE *stream);

2) Макрос getchar() имеет следующий прототип:

int getchar();

Этот макрос определен как getc (stdin). С помощью этого макроса из стандартного входного потока stdin считывается очередной символ и его значение преобразуется в тип int без учета знака. Если переадресация стандартного входного потока не производилась, то ввод осуществляется с клавиатуры. В пропротивном случае ввод будет осуществляться из файла, назначенного для входного потока и указанного в командной строке при вызове программы.

3) Макрос putc() имеет следующий прототип:

int putc(int с, FILE *stxeam) ;

Он выводит символ в поток, заданный параметром stream. В случае успеха putc() возвращает выводимый символ с, препреобразованный к типу int; в случае ошибки - EOF.

4) Макрос putchar() имеет следующий прототип:

int putchar(int с) ;

Этот макрос определяется как putc(c, stdout). В случае успеха он возвращает символ с, преобразованный к типу int. В случае ошибки он возвращает EOF.

4. Функции ввода и вывода строк

а) Неформатированный ввод или вывод.

1) Функция gets() имеет следующий прототип:

char *gets(char *s);

Она выполняет считывание строки символов из стандартного входного потока и помещает их в переменную s. Символ перехода на новую строку ' \n' заменяется символом ' \0' при помещении в строку s.

Функция puts () имеет следующий прототип:

int puts(const char *s);

Она выводит строку в стандартный выводной поток и добавляет символ перевода на новую строку ' \n'. В случае успеха puts() возвращает неотрицательное значение. В противном случае она возвращает EOF.

Пример использования функции вывода строк:

#include <stdio.h>

int main()

{

char* string = "Выводимая строка" ;

puts(string);

return 0;

}

Сам. работа (стр 186- 201)

б) Форматированный ввод или вывод

  1. Функция scanf ()

  2. Функция sscanf()

  3. Функция printf()

  4. Функция sprintf 0

5. Функции открытия и закрытия файлового потока.

Перед тем, как выполнять операции ввода и вывода в файловый поток, нужно его открыть.

1) Открытие файлового потока - функция fopen().

Эта функция имеет следующий прототип:

FILE *fopen(const char *filename,

const char *mode);

Она открывает файл с именем filename и связывает с ним поток. Параметр mode является строкой, задающей режим, в котором открывается файл. (см. табл. стр. 202).

По завершении работы с потоком он должен быть закрыт.

2) Закрытие потока - функция fclose(), имеет следующий прототип:

int fclose(FILE *stream);

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]