使用fwrite()和fread()函数直接访问文件
使用fwrite()和fread()函数直接访问文件
努力喵 发表于2年前
使用fwrite()和fread()函数直接访问文件
  • 发表于 2年前
  • 阅读 6
  • 收藏 0
  • 点赞 0
  • 评论 0
// direct.c -- fwrite()和fread()用法演示
#include <stdio.h>
#include <stdlib.h>
#define SIZE 20

int main(void){
  int count, array1[SIZE], array2[SIZE];
  FILE *fp;
  
  // 给array1[]中的元素赋值
  for(count = 0; count < SIZE; count++)
    array1[count] = 2 * count;
  
  //打开二进制模式文件
  if((fp = fopen("direct.txt", "wb")) == NULL){
    fprintf(stderr, "Error opening file.");
    exit(1);
  }
  
  //把array[]1保存至文件中
  if(fwrite(array1, sizeof(int), SIZE, fp) != SIZE){
    fprintf(stderr, "Error writing to file.");
    exit(1);
  }
  fclose(fp);
  
  //以二进制模式打开相同的文件读取数据
   if((fp = fopen("direct.txt", "rb")) == NULL){
     fprintf(stderr, "Error opening file.");
     exit(1);
   }
   
   //读取array2[]中的数据
   if(fread(array2, sizeof(int), SIZE, fp) != SIZE){
     fprintf(stderr, "Error reading file.");
     exit(1);
   }
   fclose(fp);
   
   //显示两个数组中的内容
   for(count = 0; count < SIZE; count++)
     printf("%d\t%d\n", array1[count], array2[count]);
   return 0; 
}


共有 人打赏支持
粉丝 6
博文 105
码字总数 34117
×
努力喵
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: