久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 文件操作之-數據塊讀寫fread(),fwrite()-C語言教程 [打印本頁]

作者: 51黑ren    時間: 2015-12-20 03:06
標題: 文件操作之-數據塊讀寫fread(),fwrite()-C語言教程
//向PC硬盤寫入并讀出兩個學生信息fread(ElemType*,int Size,int n,FILE *)

//fwrite(ElemType*,int Size,int n,FILE *);參數:ElemType*--讀寫緩沖首指針   Size--數據塊的大小
//  n--讀寫次數,FILE *--文件對象指針
//本例程包含文件檢測部分內容

#include"stdio.h"
#include"stdlib.h"//用到了exit()
/*
fread():從指定文件讀若干塊數據

*/
struct  student
{
  char name[10];
  int age;
  float score;
};

void main()
{

  int i;
  student s1[2],s2[2],*p1,*p2;//s1和s2是兩個結構體,s1用來存儲鍵盤輸入數據即寫文件,s2用來存儲讀入數據
  FILE *fp;
  p1=s1;p2=s2;//給指針變量賦值
  if((fp=fopen("TEST2.txt","wt+"))==NULL)//“at”表示在fp文件末尾追加數據d:\\TEST.txt
  {
    printf("打開文件失敗!");
        getchar();
        exit(1);

  }else
  {

         printf("請輸入學生結構體信息數據:");
     printf("\n\r");

     for(i=0;i<2;i++)
         {
            scanf("%s %d %f",p1->name,&p1->age,&p1->score);//鍵盤輸入結構體成員數據 &p1->name
                p1++;
         
         }
      p1=s1;
  //   fwrite(p1,sizeof(struct student),2,fp);//向fp文件寫入數據塊2次,每次寫人一個結構體。即一共寫入兩個結構體數據塊
         for(i=0;i<2;i++)//注意:這兩種寫入方式都可以
         {
             fwrite(p1,sizeof(struct student),1,fp);
             p1++;
         }

         //         p2=s2;
         /*“at”表示在fp文件末尾追加數據, 程序執行到此,文件內部指針已經指向文件末尾
           如果要讀入fp文件的數據則必須將文件內部指針重新指向文件第一個字節處,即若要從文件第一個字節開始讀數據
           就必須將文件內部指針重新rewind(fp)指向文件頭
         
         */
         rewind(fp);


   printf("\n  \n");
   printf("讀出的數據是:\n");
  // fread(p2,sizeof(struct student),2,fp);//向fp文件寫入數據塊2次,每次寫人一個結構體。即一共寫入兩個結構體數據塊
   for(i=0;i<2;i++)
         {
            fread(p2,sizeof(struct student),1,fp);
           printf("%s\n %d\n %f\n",p2->name,p2->age,p2->score);//分行顯示
           p2++;
         }

  }
if(0==ferror(fp))printf("文件操作成功\n");//如果ferror(fp)返回值是0,表示文件操作沒有出錯
else printf("文件操作出錯\n");
//判斷文件內部指針是否結尾,如果feof(fp)返回值大于1則表示文件內部指針結尾
if(feof(fp)>1)printf("文件指針已結尾\n");
else printf("文件內部指針沒有結尾\n");
char ch=fgetc(fp);//繼續讀出直到文件結尾
while(ch!=EOF)
{
   fgetc(fp);

}
if(feof(fp)>1)printf("文件指針已結尾\n");
else printf("文件內部指針沒有結尾\n");
if(fclose(fp)==NULL)
  {
    printf("文件成功關閉!\n");

  }

}


///////////-----GKXW--------------////////////////////////////////////////











歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 国产精品视频久久 | 日韩精品在线免费 | 国产a区| 日韩免费在线视频 | 亚洲国产一区二区三区在线观看 | 日韩在线欧美 | 欧美久久不卡 | 国产精品激情 | 韩日免费视频 | 伊人天堂网 | 婷婷免费视频 | 日韩欧美三区 | 日韩一区中文字幕 | 欧美夜夜 | 有码一区| 天天色综| 一区二区在线 | 日韩国产一区二区 | 大学生a级毛片免费视频 | 中文字幕一区二区三区在线观看 | 日韩在线播放视频 | 国产色婷婷精品综合在线手机播放 | 一级片av | 国产精品视频偷伦精品视频 | 精品国产乱码久久久久久88av | 欧美日韩高清免费 | 欧美日韩综合视频 | 日韩精品一区二区三区中文字幕 | av黄色在线播放 | 欧美精品网站 | 涩涩视频在线观看 | 正在播放国产精品 | 韩日精品视频 | 久色一区 | 中文字幕av一区 | 亚洲第一女人av | 韩国毛片一区二区三区 | 国产一区二区自拍 | 久久精品av麻豆的观看方式 | 日韩一级免费大片 | 亚洲精品第一国产综合野 |