Ques : Describe Character Input and output in Files

Ans :

ANSI C provides a set of functions for reading and writing character by character or one byte at a time. These functions are defined in the standard library. They are listed and described below:

• getc()

• putc()

getc( ) is used to read a character from a file and putc( ) is used to write a character to a file. Their syntax is as follows:

int putc(int ch, FILE *stream);

int getc(FILE *stream);

The file pointer indicates the file to read from or write to. The character ch is formally called an integer in putc( ) function but only the low order byte is used. On success putc( ) returns a character(in integer form) written or EOF on failure. Similarly getc( ) returns an integer but only the low order byte is used. It returns EOF when end-of-file is reached. getc( ) and putc( ) are defined in as macros not functions.

fgetc() and fputc()
Apart from the above two macros, C also defines equivalent functions to read / write
characters from / to a file. These are:

int fgetc(FILE *stream);
int fputc(int c, FILE *stream);

To check the end of file, C includes the function feof( ) whose prototype is:

int feof(FILE *fp);

It returns 1 if end of file has been reached or 0 if not. The following code fragment
explains the use of these functions.

Leave a Reply