getc() function in C
Getc is one of the file handling technique in C. The Getc() is a C library function gets the next character or new characters from the specific stream and supports the position of the file stream.
The getc capability in C programming language peruses the following person from any info stream and returns a whole number worth.
It is a standard capability in C and can be utilized by including the <stdio.h> header.
The stream converts into the getc function and finalize into the int.
The getc() function is called when the read operation is an operation system function whereas the getc is a standard macro in c.
The getc() function can read any of the file input stream in c. We use the header file for the getc is #include<studio.h>.
In this function that the stream is from a record opened in text mode, the line-ending character succession carries and return in addition to line end is meant line end. No such interpretation happens for documents opened in twofold mode.
Syntax:
The following is the syntax for the getc() declaration
Int getc(FILE *stream)
Parameter:
The stream parameter will be used in the getc() function
FILE *filename
Example: FILE *STREAM
Stream:
A document stream or standard info stream recognized or identified by a pointer to the FILE object.
Return type: int
Return value:
The character string or value is returned as the integer value.
If the EOF( End of the file) is reaches to the end or the error occurs in the reading mode, then the function returns the end of the file statement and indicates the error. To rectify the errors we use feof or ferror to determine the error occurs or reached the EOF.
Use of the function in getc():
By the getc() capability we take the following person from the information record stream and addition the document position pointer. The model of the capability getc() is:
Int getc(FILE *stream);
It Returns an integer value which is converted as of an unsigned char. It also returns the EOF which means end of the file which itself is also an integer value. Whenever there is a binary file, check for EOF with the function feof() and ferror().
Lets see an example programs for getc:
Example 1:
#include <stdio.h>
#include<conio.h>
#include <stdlib.h>
Int main()
{
FILE* f;
Char ch;
F = fopen(“sample.txt”, “w”);
Printf(“Enter number of character\n”);
For (int I = 0; I < n; i++) {
Scanf(“%c”, &ch);
Putc(ch, f);
Fflush(stdin);
}
//close the file after write operation is over
Fclose(f);
//open a file
F = fopen(“sample.txt”, “r”);
Printf(“the write operation is performed and read option is going to perform\n);
While (!feof(f)) {
Ch = getc(f);
Printf(“%c\n”, ch);
}
Fclose(f);
Return 0;
}
Output:
Enter the number of characters:
A
B
C
D
E
The write operation is performed and read option is going to perform
A
B
C
D
E
In the above program code over, the user is provoked for a person from standard information, and the user entered is perused by the getc capability. The user read is then put away in the c variable and showed.
Example 2:
#include<stdio.h>
#include<stdlib.h>
Int main()
{
FILE *fp = fopen(“sample.txt”, “r”);
Int ch = getc(fp);
While (ch != EOF)
{
//To display the contents of the file on the screen
Putchar(ch);
Ch = getc(fp);
}
If (feof(fp))
Printf(“the file reached at end.”);
Else
Printf(“\nthe file doesn’t reached the end.”);
Fclose(fp);
Getchar();
Return 0;
}
Output:
The file reached at the end.
Example 3:
#include<studio.h>
#include<conio.h>
Int main()
{
FILE * fp = fopen(“filename.txt”,”r”);
Printf(“\n the character is taken and read from the file by user is: %c”, getc(fp));
Return 0;
}
Input:
Javatpoint
Output:
The character is taken from and read from the file by user is: j
This is the simplest code for the beginners to learn the getc and perform the getc operations.
Example 4:
#include<studio.h>
#inckude<conio.h>
Int main()
{
FILE *fp;
Char ch;
Clrscr();
Fp = fopen(“sample.txt”);
While((c= fgetc(fp))! = EOF);
Printf(“%c”,ch);
}
Fclose(fp);
Getch();
Return 0;
}
For this program we have to create a file and output data contains in the following data which is created in the notepad as follows:
Name: abcde
Roll No: 100
Output:
Name: abcde
Roll No: 100
The above program consists of getc and fget functions.