C Tutorial/stdio.h/fread
fread
Item Value Header file stdio.h Declaration size_t fread(void *buf, size_t size, size_t count, FILE *stream); Function reads count number of objects by size and stores them in *buf. Return returns the number of items actually read.
- Use feof() to determine the end of file.
- Use ferror() to determine the error.
<source lang="cpp">#include <stdio.h>
#include <stdlib.h> int main(void) { FILE *fp; float bal[5] = { 1.1F, 2.2F, 3.3F, 4.4F, 5.5F }; int i; if((fp=fopen("test", "wb"))==NULL) { printf("Cannot open file.\n"); exit(1); } if(fwrite(bal, sizeof(float), 5, fp) != 5) printf("File read error."); fclose(fp); if((fp=fopen("test", "rb"))==NULL) { printf("Cannot open file.\n"); exit(1); } if(fread(bal, sizeof(float), 5, fp) != 5) { if(feof(fp)) { printf("Premature end of file."); }else { printf("File read error."); } } fclose(fp); for(i=0; i<5; i++){ printf("%f ", bal[i]); } return 0; }</source>