Mega Code Archive

 
Categories / C / File
 

Write and read the entire array in one step

#include <stdio.h> #include <stdlib.h> double d[10] = {   1.3, 1.7, 1.23, 1.9, 0.97,   1.5, 7.4, 0.0, 1.01, 8.75 }; int main(void) {   int i;   FILE *fp;   if((fp = fopen("my.txt", "wb")) == NULL) {     printf("Cannot open file.\n");     exit(1);   }   /* write the entire array in one step */   if( fwrite(d, sizeof d, 1, fp) != 1) {     printf("Write error.\n");     exit(1);   }   fclose(fp);   if((fp = fopen("my.txt", "rb"))==NULL) {     printf("Cannot open file.\n");     exit(1);   }   /* clear the array */   for(i = 0; i < 10; i++)        d[i] = 0.0;   /* read the entire array in one step */   if(fread(d, sizeof d, 1, fp) != 1) {     printf("Read error.\n");     exit(1);   }   fclose(fp);   /* display the array */   for(i = 0; i < 10; i++)        printf("%f ", d[i]);   return 0; }