Посимвольный ввод-вывод

Стандартные функции ввода fgetchar () или getchar () возвращают прочитанный символ из файла stdin (буфер ввода), который можно записать в переменную целого типа:

int ch;

ch = getchar();.

Поскольку значение признака конца файла EOF не должно совпадать с ASCII-кодами символов, его определяют равным –1, а переменную ch описывают как целую, а не символьную.

Файловые функции чтения fgetc (fp) или getc (fp) возвращают символ из открытого файла fp:

ch = fgetc (fp);.

Стандартные функции вывода fputchar (ch) или putchar (ch) выводят символ на экран (stdout):

putchar(ch);.

Функции записи в файл fputc (fp) или putc (fp) помещают символ в открытый файл fp:

fputc (ch, fp);.

Пример. Демонстрируются приемы открытия и закрытия файла, а также использование файлового и стандартного символьного ввода-вывода данных.

Программа.

#include<conio.h>

#include<stdio.h>

int main ()

{ int ch;

char *filename = "c:\\tc\\myfiles\\char.dat"; /* спецификация файла */

FILE *fp; /* указатель файла */

clrscr(); /* очистка экрана */

/* Открытие файла для записи: */

if ((fp = fopen(filename, "w")) == NULL)

{ рuts ("0шибка открытия файла.\n”

”Проверьте спецификацию файла.");

puts ("He забудьте про удвоение символа \\.");

return 0; /* аварийный выход из программы */

}

printf ("Фaйл %s открыт для записи.\n”

”Введите несколько символов и нажмите Enter.", filename);

printf (" EOF:%d\n", EOF); /* вывод значения EOF */

while ((ch=getchar())!= '\n') /* цикл ввода символов */

fputc (ch, fp); /* запись символа в файл */

freopen (filename, "r", fp); /* переоткрытие файла для чтения */

рuts ("Вывод символов из файла");

while ((ch=getc(fp))!= EOF) /* цикл чтения символов из файла */

putchar (ch); /* вывод символа на экран */

fclose(fp); /* закрытие файла */

printf("\nНажмите лю6ую клавишу...");

getch(); /* задержка экрана результатов */

return 1; /* нормальное окончание программы */

}

Результаты программы:

Файл c:\tc\myfiles\char.dat открыт для записи.

Введите несколько символов и нажмите Enter. EOF= -1

Привет, программист!

Вывод символов из файла:

Привет, программист!

Нажмите любую клавишу...

Построчный ввод-вывод


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: