Простейшей из стандартных функций ввода-вывода на консоль является getchar(), читающая символы с клавиатуры, и putchar(), печатающая символ на экран в текущей позиции курсора. Тем не менее getchar() имеет некоторые существенные ограничения, описываемые ниже. В Borland C добавлена функция getche(), которая читает символ с клавиатуры без ожидания нажатия клавиши <Enter>. Ниже показаны прототипы функций getchar(), getche() и putchar():
int getchar(void);
int getche(void);
int putchar(int ch);
Функция getchar() читает символ с клавиатуры и ожидает нажатие <Enter>. Функция getche() читает символ с клавиатуры и не ожидает нажатие <Enter>. Функция возвращает значение ch в случае успеха или EOF в случае ошибки (EOF – это макроопределение, означающее конец файла). Функции getchar() и putchar() требуют заголовочного файла stdio.h. Функция getche() требует заголовочного файла conio.h. Следующий пример программы вводит символы с клавиатуры и выводит их в противоположном регистре. То есть прописные символы будут выведены строчными, а строчные – прописными. Программа останавливается при обнаружении точки. Заголовочный файл ctype.h содержит прототипы функций для обработки символов.
/* переключатель регистра */
#include <conio.h>
#include <stdio.h>
#include <ctype.h>
int main(void) {
char ch;
do {
ch=getche();
if(islower(ch)) putchar(toupper(ch));
else putchar(tolower(ch));
} while (ch!=’.’); /* использование точки для остановки */
}