Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Л8.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
275.46 Кб
Скачать

Функции ввода-вывода

#include <stdio.h>

int _fgetchar(void);

Возвращает символ из файла стандартного ввода.

#include <stdio.h>

int fgetc(FILE *stream);

Возвращает символ из открытого файла, описываемого переменной типа FILE , на которую указывает stream .

#include <stdio.h>

int getc(FILE *stream);

Возвращает символ из открытого файла, описываемого переменной типа FILE , на которую указывает stream . Является макроопределением через функцию _fgetc().

#include <stdio.h>

int ungetc(int c, FILE *stream);

Возвращает символ int c назад в поток stream. Следующая операция чтения из файла stream будет возвращать символ c.

Функция fgetc

Функция

#include <stdio.h>

int fgetc(FILE *stream);

читает отдельный текущий символ из входного потока stream и увеличивает cсоответствующий указатель (если он есть) для указания следующего считываемого символа.

Пример:

#include<string.h>

#include<stdio.h>

#include<conio.h>

int main(void)

{

FILE *stream;

char msg[] = "Тестовый пример";

char ch;

/* создать файл для его изменения */

stream = fopen("DUMMY.FIL","w+");

/* записать в файл данные */

fwrite(msg,strlen(msg),1,stream);

/* перейти в начало файла */

fseek(stream,0,SEEK_SET);

do

{

/* ввести символ из файла */

ch = fgetc(stream);

/* вывести символ на экран */

putch(ch);

} while(ch!=EOF);

fclose(stream);

return 0;

}

Функция getc

Функция

#include <stdio.h>

int getc(FILE *stream);

читает отдельный символ из текущей позиции потока stream и изменяет соответствующий указатель на файл для указания следующего символа.

Пример:

#include <stdio.h>

int main(void)

{

char ch;

printf("Input a character:");

ch = getc(stdin);

printf("The character input was: '%c'\n", ch);

return 0;

}

Функция ungetc

Функция

#include <stdio.h>

int ungetc(int c, FILE *stream);

возвращает символ c в заданный поток ввода stream. Stream должен быть буферизованным и открытым для чтения. Последующая операция чтения из stream начинается с символа c. EOF вернуть в поток посредством использования ungetc нельзя. Эта функция возвращает значение ошибки, если из stream ничего не прочитано или если c назад не возвращен. Символы, размещаемые в потоке посредством ungetc, могут быть уничтожены, если функции fseek или rewind вызваны перед считыванием символа из stream.

Пример:

#include <stdio.h>

#include <ctype.h>

int main( void )

{

int i=0;

char ch;

puts("Input an integer followed by a char:");

while((ch = getchar()) != EOF && isdigit(ch))

i = 10 * i + ch - 48; /* convert ASCII into int value */

if (ch != EOF)

ungetc(ch, stdin);

printf("i = %d, next char in buffer = %c\n", i, getchar());

return 0;

}

Функция fputs

Функция

#include <stdio.h>

int fputs(char * string, FILE * stream);

копирует строку, ограниченную нулевым байтом в поток stream. Она не добавляет в конец строки символ перехода на новую строку и не выводит нулевой символ.

При успешном завершении fputs возвращает последний выведенный символ. В противном случае возвращает EOF.

Пример:

#include<stdio.h>

int main(void)

{

/* вывести строку в поток */

fputs("Тестовый пример",stdout);

return 0;

}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]