fopen(), fclose(), gets() and fputs() functions are file handling functions in C programming language. Please find below the description and syntax for each above file handling functions.
Declaration & Description
|fopen()||Declaration: FILE *fopen (const char *filename, const char *mode)
fopen() function is used to open a file to perform operations such as reading, writing etc. In a C program, we declare a file pointer and use fopen() as below. fopen() function creates a new file if the mentioned file name does not exist.
|fclose()||Declaration: int fclose(FILE *fp);
fclose() function closes the file that is being pointed by file pointer fp. In a C program, we close a file as below.
|gets()||Declaration: char *gets (char *string)
gets functions is used to read the string (sequence of characters) from keyboard input. In a C program, we can read the string from standard input/keyboard as below.
|fputs()||Declaration: int fputs (const char *string, FILE *fp)
fputs function writes string into a file pointed by fp. In a C program, we write string into a file as below.
Mode of operations performed on a file in C language:
There are many modes in opening a file. Based on the mode of file, it can be opened for reading or writing or appending the texts. They are listed below.
- r – Opens a file in read mode and sets pointer to the first character in the file. It returns null if file does not exist.
- w – Opens a file in write mode. It returns null if file could not be opened. If file exists, data are overwritten.
- a – Opens a file in append mode. It returns null if file couldn’t be opened.
- r+ – Opens a file for read and write mode and sets pointer to the first character in the file.
- w+ – opens a file for read and write mode and sets pointer to the first character in the file.
- a+ – Opens a file for read and write mode and sets pointer to the first character in the file. But, it can’t modify existing contents.
Example program for fopen(), fclose(), gets() and fputs() functions in C programming language:
/ * Open, write and close a file : */
# include <stdio.h>
# include <string.h>
int main( )
FILE *fp ;
// opening an existing file
printf( "Opening the file test.c in write mode" ) ;
fp = fopen("test.c", "w") ;
if ( fp == NULL )
printf( "Could not open file test.c" ) ;
printf( "\n Enter some text from keyboard” \
“ to write in the file test.c" ) ;
// getting input from user
while ( strlen ( gets( data ) ) > 0 )
// writing in the file
fputs(data, fp) ;
fputs("\n", fp) ;
// closing the file
printf("Closing the file test.c") ;
Opening the file test.c in write mode
Enter some text from keyboard to write in the file test.c
Hai, How are you?
Closing the file test.c
Other Inbuilt file handling functions in C programming language:
C programming language offers many other inbuilt functions for handling files. They are given below. Please click on each function name below to know more details, example programs, output for the respective file handling function.
File handling functions
|fopen ()||fopen () function creates a new file or opens an existing file.|
|fclose ()||fclose () function closes an opened file.|
|getw ()||getw () function reads an integer from file.|
|putw ()||putw () functions writes an integer to file.|
|fgetc ()||fgetc () function reads a character from file.|
|fputc ()||fputc () functions write a character to file.|
|gets ()||gets () function reads line from keyboard.|
|puts ()||puts () function writes line to o/p screen.|
|fgets ()||fgets () function reads string from a file, one line at a time.|
|fputs ()||fputs () function writes string to a file.|
|feof ()||feof () function finds end of file.|
|fgetchar ()||fgetchar () function reads a character from keyboard.|
|fprintf ()||fprintf () function writes formatted data to a file.|
|fscanf ()||fscanf () function reads formatted data from a file.|
|fputchar ()||fputchar () function writes a character onto the output screen from keyboard input.|
|fseek ()||fseek () function moves file pointer position to given location.|
|SEEK_SET||SEEK_SET moves file pointer position to the beginning of the file.|
|SEEK_CUR||SEEK_CUR moves file pointer position to given location.|
|SEEK_END||SEEK_END moves file pointer position to the end of file.|
|ftell ()||ftell () function gives current position of file pointer.|
|rewind ()||rewind () function moves file pointer position to the beginning of the file.|
|getc ()||getc () function reads character from file.|
|getch ()||getch () function reads character from keyboard.|
|getche ()||getche () function reads character from keyboard and echoes to o/p screen.|
|getchar ()||getchar () function reads character from keyboard.|
|putc ()||putc () function writes a character to file.|
|putchar ()||putchar () function writes a character to screen.|
|printf ()||printf () function writes formatted data to screen.|
|sprinf ()||sprinf () function writes formatted output to string.|
|scanf ()||scanf () function reads formatted data from keyboard.|
|sscanf ()||sscanf () function Reads formatted input from a string.|
|remove ()||remove () function deletes a file.|
|fflush ()||fflush () function flushes a file.|
Ask your questions or clarify your/others doubts from,