RAD Studio
ContentsIndex
PreviousUpNext
fread

Header File 

stdio.h  

Category 

Input/output Routines 

Prototype 

size_t fread(void *ptr, size_t size, size_t n, FILE *stream); 

Description 

Reads data from a stream. 

fread reads n items of data each of length size bytes from the given input stream into a block pointed to by ptr.  

The total number of bytes read is (n * size). 

Return Value 

On success fread returns the number of items (not bytes) actually read.  

On end-of-file or error it returns a short count (possibly 0). 

Example  

#include <string.h>
#include <stdio.h>
int main(void)
{
   FILE *stream;
   char msg[] = "this is a test";
   char buf[20];
   if ((stream = fopen("DUMMY.FIL", "w+"))
       == NULL)
   {
      fprintf(stderr, "Cannot open output file.\n");
      return 1;
   }
   /* write some data to the file */
   fwrite(msg, strlen(msg)+1, 1, stream);
   /* seek to the beginning of the file */
   fseek(stream, SEEK_SET, 0);
   /* read the data and display it */
   fread(buf, strlen(msg)+1, 1, stream);
   printf("%s\n", buf);
   fclose(stream);
   return 0;
}

Portability

POSIX 
Win32 
ANSI C 
ANSI C++ 
Copyright(C) 2008 CodeGear(TM). All Rights Reserved.
What do you think about this topic? Send feedback!