C/stdio.h/fread — различия между версиями

Материал из C\C++ эксперт
Перейти к: навигация, поиск
м (1 версия: Импорт контента...)
 
м (1 версия: Импорт контента...)
 
(нет различий)

Текущая версия на 10:23, 25 мая 2010

fread: reads a number of objects by size and stores them in *buf

    
//Header file:     #include <stdio.h>  
//Declaration:     size_t fread(void *buf, size_t size, size_t count, FILE *stream); 
//Return:          returns the number of items actually read. 

  
  #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;
  }
         
/*
1.100000 2.200000 3.300000 4.400000 5.500000 */