double arrow

Функция 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;

}


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