Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование на С.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.77 Mб
Скачать

Символьный ввод и вывод данных.

Стандартная библиотека включает несколько функций для чтения и записи одного символа. Простейшие из них мы сегодня и рассмотрим. Функции getchar и putchar.

Теперь пришло время научиться работать со справочником функции. В интернете можно найти много различных справочников, можно купить так же справочник в книжном магазине, часто в конце различных учебников по программированию есть небольшие справочники по функциям стандартной библиотеки. В общем, не суть важно, какой использовать, содержание везде примерно одинаковое. Для примера используем справочник сайта CodeNet. Никакого скрытого смысла тут нет, просто если в google набрать «справочник по функциям С» то он будет на первой позиции. Выберем там функцию getchar. Вот её описание:

Листинг 3.1

getchar

Функция

Вводит символ из потока stdin.

Синтаксис

#include <stdio.h>

int getchar(void);

Файл, содержащий прототип

stdio.h

Описание

getchar - это макрокоманда, вводящая символ из потока stdin. Она определена следующим образом: getc(stdin).

Возвращаемое

При успешном завершении функция getchar возвращает значение считанный символ после предварительного преобразования его в целое без расширения знака. При возникновении ситуации EOF или при ошибке она возвращает EOF.

Переносимость

Функция поддерживается на системах UNIX, описана Керниганом и Ритчи. Поддерживается стандартом ANSI C. Функция не совместима с Windows.

Смотрите также

fdetc, fgetchar, getch, getche, gets, putc, putchar, scanf, ungetc.

Пример:

И примерно такое же описание будет в любом из справочников. Остановимся поподробнее.

  • Блок «функция».

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

  • «Синтаксис».

Описано как использовать в программе. Указано, какой файл нужно подключить чтобы использовать, каких типов должны быть входные параметры, и какое значение функция возвращает. В нашем случае:

Листинг 3.2.

#include <stdio.h>

int getchar(void);

Любая функция имеет общий формат:

Int getchar (void);

Тип возвращаемого значения

Имя функции

Кол-во и тип входных параметров

Формат прототипа функций в языке Си

Следовательно, мы узнали, что необходимо подключить сначала файл stdio.h. И функция возвращает значение типа int. При этом не имеет параметров (это значит, что когда мы будем её использовать, в скобочках ничего писать не нужно), об этом говорит тип void в скобочках.

  • «Файл, содержащий прототип»

Это имя файла где описана функция, именно этот файл и нужно подключить чтобы с ней работать.

  • «Описание».

Представлено более полное описание того, что делает функция.

  • «Возвращаемое значение»

Описывает что функция возвращает после своей работы. В нашем случае, getchar возвращает значение целого типа, или если произошла ошибка значение EOF. EOF (аббревиатура от end of file - конец файла) - это константа целого типа. Она означает, что в потоке больше нет данных для считывания. Её значение определено в файле stdio.h.

  • «Переносимость»

Описывается в каких операционных системах работает данная функция ( в нашем случае getchar). Не удивляйтесь тому, что написано функция getchar не работает в Windows, формально мы сейчас создаем консольные приложения для MS DOS, поэтому у нас она будет работать.

  • «Смотри так же»

Здесь список функций выполняющих похожие действия, что и данная функция.

  • «Пример»

Обычно, небольшой пример использования в программе. Могут быть какие-то пояснения.

Для того, чтобы не было сомнений в том, что во всех справочниках примерно одинаковое содержание, вот картинка из одного учебника по программированию:

Описание функции getchar из справочника функций

Как видите, все основные данные о функции есть и тут.