C fflush() function
C library function - fflush()
The fflush() function is used to empty the buffer that is associated with the specified output stream, if possible. The fflush() function undoes the effect of any ungetc() function if the stream is open for input. The stream remains open after the call.
Syntax:
int fflush(FILE *stream)
fflush() Parameters:
Name | Description | Required /Optional |
---|---|---|
stream | Identifies an address for a file descriptor, which is an area of memory associated with an input or output stream. | Required |
Return value from fflush()
- Upon successful completion, fflush() shall return 0; otherwise, it shall set the error indicator for the stream, return EOF, and set errno to indicate the error.
Example: fflush() function
Following example deletes a stream buffer.
#include <stdio.h>
#include <ctype.h>
int main(void)
{
FILE *stream;
int c;
unsigned int result = 0;
stream = fopen("test.txt", "r");
while ((c = getc(stream)) != EOF && isdigit(c))
result = result * 10 + c - '0';
if (c != EOF)
ungetc(c, stream);
fflush(stream);
printf("The result is: %d\n", result);
if ((c = getc(stream)) != EOF)
printf("The character is: %c\n", c);
}
Output:
The result is: 0
C Programming Code Editor:
Previous C Programming: C ferror()
Next C Programming: C fgetpos()
It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.
https://www.w3resource.com/c-programming/stdio/c_library_method_fflush.php
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics