C language Getc () function: Reading characters from the stream
header file:
The function getc () is used to extract characters from the stream, and its prototype is as follows:
The parameter argument *steam the file stream from which you want to read characters.
Return value returns the character that was read when the function was successfully executed.
Description reads one character from a file and then returns EOF when it reads to the end of the file without data. GETC () works the same as fgetc (), but in some libraries getc () is defined as a macro rather than a real function.
Examples below demonstrate the use of the GETC () function, which is used in a program to read characters from the standard input console, as follows.
#include <stdio.h>//introduction of standard input output library
void Main () {
char ch;
printf ("Input a Character:"); Enter hint info
ch = getc (stdin);//read characters from the standard input console
("The character input was: '%c ' \", ch);//output character
}
Run the above program to first declare a variable to hold the character you are taking, and then output the prompt to receive any key pressed from the standard input console and output the character to the console.
Use GETC () to read a string from a file, as shown in the following code.
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main (void)
{
int ch;
int Len;
int i=0;
file* FStream;
Char msg[100] = "hello! I have read this file. ";
Fstream=fopen ("Test.txt", "at+");
if (fstream==null)
{
printf ("Read file Test.txt failed!\n");
Exit (1);
}
/*getc reads a character from the file stream/while
(ch = getc (fstream))!=eof)
{
putchar (ch);
}
Putchar (' \ n ');
Len = strlen (msg);
while (len>0)/* Loop Write * *
{
putc (msg[i],fstream);
Putchar (Msg[i]);
len--;
i++;
}
Fclose (fstream);
return 0;
}
function fopen Use the pattern "at+" to open a text file, and use getc to read characters from the file stream one by one until it is finished.
C language Ungetc () function: Return the character to the input stream
header file:
The UNGETC () function is used to return a character to the input stream, and the returned character is obtained by the next function that reads the file stream. The prototype is as follows:
int ungetc (char C, FILE *stream);
"Parameter" C is the character to be returned, and the stream is the input stream to be returned.
Return value returns a value other than 0 if the function succeeds, otherwise, returns 0.
Example: The following example shows the use of the UNGETC () function, which returns characters to the input stream with the following code.
#include <stdio.h>
#include <ctype.h>
int main ()
{
int i=0;
char ch;
Puts ("Input an integer followed by a char:");
Reads a character until it encounters a terminator or a non-numeric character while
((ch = getchar ())!= EOF && isdigit (CH))
{
i = ten * i + ch-48;//Convert to Integer
}
If it is not a number, it is put back into the buffer if
(ch!= EOF)
{
ungetc (Ch,stdin);//Send a character back to the input stream
}
printf ("\n\ni =%d, next Char in buffer =%c\n ", I, GetChar ());
System ("pause");
return 0;
}
Output results:
123ab↙
i *= 123, next char in buffer = a
The
program begins to perform a while loop until it encounters a non-numeric or end identity to proceed, immediately after determining whether it is an end identity, or returning the keyboard buffer if it is not an end identity, and then using Getch () to retrieve the character output from the buffer at the last output. Because the function GetChar () is used in the while, you need to enter a character and press ENTER.