C ferror() function
C library function - ferror()
The ferror() function check for an error in reading from or writing to the given stream.When an error occurs, the error indicator remains set until you close stream, call the clearerr() function.
Syntax:
int ferror(FILE *stream)
ferror() 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 ferror()
- The ferror() function shall return non-zero if and only if the error indicator is set for stream.
Example: ferror() function
Following example puts data out to a stream, and then checks that a write error (invalid filename) has not occurred.
#include <stdio.h>
int main(void)
{
FILE *stream;
char *string = "C programming.";
stream = fopen("*test.txt","w");
fprintf(stream, "%s\n", string);
if (ferror(stream))
{
printf("write error\n");
clearerr(stream);
}
if (fclose(stream))
perror("fclose error");
}
Output:
fclose error: Invalid argument
C Programming Code Editor:
Previous C Programming: C feof()
Next C Programming: C fflush()
C Programming: Tips of the Day
Reading a string with scanf :
An array "decays" into a pointer to its first element, so scanf("%s", string) is equivalent to scanf("%s", &string[0]). On the other hand, scanf("%s", &string) passes a pointer-to-char[256], but it points to the same place.
Then scanf, when processing the tail of its argument list, will try to pull out a char *. That's the Right Thing when you've passed in string or &string[0], but when you've passed in &string you're depending on something that the language standard doesn't guarantee, namely that the pointers &string and &string[0] -- pointers to objects of different types and sizes that start at the same place -- are represented the same way.
Ref : https://bit.ly/3pdEk6f
- Weekly Trends
- Java Basic Programming Exercises
- SQL Subqueries
- Adventureworks Database Exercises
- C# Sharp Basic Exercises
- SQL COUNT() with distinct
- JavaScript String Exercises
- JavaScript HTML Form Validation
- Java Collection Exercises
- SQL COUNT() function
- SQL Inner Join
- JavaScript functions Exercises
- Python Tutorial
- Python Array Exercises
- SQL Cross Join
- C# Sharp Array Exercises