Программирование видеоадаптеров.© Александр Фролов, Григорий ФроловТом 21, М.: Диалог-МИФИ, 1993. Функции putchar и putcЭти функции помещают один символ в текущую позицию выходного потока. Прототипы функций представлены ниже: int putc( int ch, FILE *stream ); int putchar( int ch ); Функция putc отличается от putchar наличием второго аргумента, который определяет выходной поток, в который помещается символ. Она может использоваться и для записи символов в открытый файл и для записи в стандартные потоки ввода-вывода. В частности, если второй аргумент функции равен константе stdout, то она эквивалентна функции putchar и выводит символ в стандартный выходной поток. Этот поток может идти на экран монитора или в файл, если используется свойство переназначения потока. Фактически функция putchar является макроопределением: #define putchar(_c) putc((_c),stdout) Первые параметры обеих функций совпадают по смыслу и задают ASCII-код выводимого символа (не смотря на то, что переменная ch целого типа, используется только ее младший байт). Функции обрабатывают управляющие символы. Список управляющих символов приведен в следующей таблице:
Функции возвращают ASCII-код выведенного на экран символа, а в случае ошибки возвращают константу EOF. Чтобы конкретизировать ошибку можно воспользоваться функцией ferror. Программа PUTCHAR (листинг 9.1) демонстрирует использование функции putchar. Листинг 9.1. Файл PUTCHAR.C // Использование функции putchar #include <stdio.h> void main(void) { char *ptr, out_str[] = "\aputchar\nputc\a"; for(ptr = out_str; *ptr; putchar(*(ptr++)) ); } Включаемый файл STDIO.H содержит спецификации функций putchar и putc. Следовательно, этот файл необходимо включать во все программы, использующие данные функции. |