850_____________________________________________Глава 14

имеет тот же указатель позиции в файле. Изменение указателя в одном из деск-
рипторов приводит к синхронному сдвигу указателя в другом дескрипторе. Функ-
ция dup2 создает и возвращает аналогичный функции dup дубликат newhandle де-
скриптора oldhandle. Функции dup и dup2 могут использоваться, в частности, для
перенаправления стандартных потоков. Например, операторы

int hout = open("output.txt", 0_CREAT I 0_WRONLY,S_IWRITE) ;

dup2(hout,1) ;

перенаправляют стандартный выходной поток stdout (его дескриптор равен 1 —
см. раздел 14.12.1) в файл «output.txt».

14.12.4 функции ввода/вывода

функция	синтаксис / описание	файл
cgets	char *cgets(char *str)Читает строку символов с консоли	conio.h
clearerr	void clearerr(FILE *stream)Очищает индикаторы ошибок и конца файла потока stream	stdio.h
cprintf	int cprintf(const char *format [, argument, ...]Выводит на экран список аргументов argument по формату format (см. раздел 14.4.1)	conio.h
cputs	int cputs(const char *str)Выводит строку на экран; возвращает последний символ	conio.h
cscanf	int cscanf(char *format [, address, ...])Вводит данные с консоли в список аргументов по адресам argument по формату format; возвращает число успешно введенных полей или EOF при конце файла	conio.h
eof	int eof(int handle)Возвращает 0 при достижении конца потока (файла), связанного с дескриптором handle	io.h
feof	int feof(FILE *stream)Возвращает 0 при достижении конца потока (файла) stream	stdio.h
ferror	int ferror(FILE *stream)Проверяет ошибки ввода/вывода потока stream и возвращает 0 при отсутствии ошибки	stdio.h
fgetc	int fgetc(FILE *stream)Вводит символ из потока stream и возвращает его обратно	stdio.h
fgetchar	int fgetchar(void)Вводит символ из потока stdin	stdio.h
fgetpos	int fgetpos(FILE *stream, fpost *pos)Заносит в pos текущую позицию файла stream; при успехе возвращает 0	stdio.h