fread() function in C++
The fread() function in C++ reads the block of data from the stream. This function first, reads the count number of objects, each one with a size of size bytes from the given input stream.
The total amount of bytes reads if successful is (size*count). According to the no. of characters read, the indicator file position is incremented. If the objects read are not trivially copy-able, then the behavior is undefined and if the value of size or count is equal to zero, then this program will simply return 0.
size_t fread(void * buffer, size_t size, size_t count, FILE * stream)
Parameter : The function accepts four mandatory parameters which are described as below:
- buffer: it specifies the pointer to the block of memory with a size of at least (size*count) bytes to store the objects.
- size: it specifies the size of each object in bytes. size_t is an unsigned integral type.
- count: it specifies the number of elements, each one with a size of size bytes.
- stream: it specifies the file stream to read the data from.
Return Value: The function returns the number of objects read successfully. If an error occurs, the return value can be less than the count.
Below programs illustrate the above function:
Suppose the file g4g.txt contains following data:
Geeks : DS-ALgo Gfg : DP Contribute : writearticle
Then, when you will run the program, the output will be
Harry Potter : Specs Hermione : Smart Weasley : FlyingCar Dumbledore : Wand
Program 2 :
count = 0, return value = 0 size = 0, return value = 0