Функция getchar() — стандартная функция языка Си для ввода символа.
Объявление прототипа функцииgetchar():
int getchar(void)
Функция putchar() — стандартная функция языка Си для вывода символа.
Объявление прототипа функции putchar():
int putchar(int c)
Эти объявления находятся в файле заголовков stdio.h, поэтому программы, использующие эти функции, должны включать следующую директиву препроцессора:
#include <stdio.h>
Функция getchar() читает из стандартного устройства ввода один символ и возвращает его код в соответствии с таблицей кодирования. Если при попытке чтения были обнаружены конец файла или ошибка, функция getchar() возвращает значение EOF. При вводе с терминала getchar() возвращает EOF, если пользователь нажал в начале строки комбинацию клавиш <CTRL>, <d>.
Программа, работающая в среде ОС UNIX и использующая функцию getchar() для ввода, не получит вводимые с клавиатуры символы до тех пор, пока пользователь не нажал клавишу <RETURN>. Это позволяет пользователю корректировать набираемые символы (например, с помощью забоя) прежде, чем программа их получит. Однако, некоторые программы, например, редактор “vi”, работают с терминалом в режиме, при котором вводимые символы немедленно становятся доступными программе.
Функция putchar() выводит один символ в стандартный вывод (по умолчанию — на экран терминала), возвращает при успешном завершении код выводимого символа иначе EOF. Обычно возвращаемое значение не обрабатывается.
Пример 1
#include <stdio.h>
/* копирование ввода на вывод */
int main()
{
  int c;

  while ((c=getchar())!=EOF)
     putchar(c);
}