Ввод/вывод в поток можно осуществлять различными способами: в виде последовательности
байтов, в виде символов и строк или с использованием форматных преобразований. Для каждого вида операций определен свой набор функций. Они описаны в приложении 6.
Операции ввода/вывода выполняются, начиная с текущей позиции потока, определяемой положением указателя потока. Указатель устанавливается при открытии на начало или конец файла (в соответствии с режимом открытия) и изменяется автоматически после каждой операции, вода/вывода. Текущее положение указателя можно получить с помощью функций ftell и fgetpos и задать явным образом с помощью функций fseek и fsetpos. Эти функции нельзя использовать
для стандартных потоков.
Основные функции ввода/вывода потока.
• Чтение и запись потока байтов выполняют функции fread и fwrite.
• Чтение символа из потока — getc, fgetc, из стандартного потока stdin — getchar.
• Запись символа в поток — putс, fputc, в стандартный поток stdout — putchar.
• Чтение строки из потока — fgets, из стандартного потока stdin — gets.
• Запись строки в поток — fputs, в стандартный поток stdout — puts.
• Форматированный ввод из потока — fscant, из стандартного потока stdin —scant, из строки — sscanf.
• Форматированный вывод в поток — fprintf, в стандартный поток stdout —printf, в строку — sprintf.