最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語言 fseek(f,0,SEEK_SET)函數(shù)案例詳解

 更新時間:2021年08月26日 11:24:30   作者:andy891218  
這篇文章主要介紹了C語言 fseek(f,0,SEEK_SET)函數(shù)案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下

fseek(f,0,SEEK_SET);

意思是把文件指針指向文件的開頭

fseek

函數(shù)名: fseek

功 能: 重定位流上的文件指針

用 法: int fseek(FILE *stream, long offset, int fromwhere);

描 述: 函數(shù)設置文件指針stream的位置。如果執(zhí)行成功,stream將指向以fromwhere為基準,偏移offset個字節(jié)的位置。如果執(zhí)行失敗(比如offset超過文件自身大小),則不改變stream指向的位置。

返回值: 成功,返回0,否則返回其他值。

fseek position the file position pointer for the file referenced by stream to the byte location calculated by offset.

程序例:

#include <stdio.h>  
long filesize(FILE *stream);  
int main(void)  
{
  FILE *stream;
  stream = fopen("MYFILE.TXT", "w+");
  fprintf(stream, "This is a test");
  printf("Filesize of MYFILE.TXT is %ld bytes\n", filesize(stream));
  fclose(stream);  return 0;  }
  long filesize(FILE *stream)
  {
	  long curpos, length;
	  curpos = ftell(stream);
	  fseek(stream, 0L, SEEK_END);
 	  length = ftell(stream);
	  fseek(stream, curpos, SEEK_SET);
  	return length;
  }
  int fseek( FILE *stream, long offset, int origin );

第一個參數(shù)stream為文件指針

第二個參數(shù)offset為偏移量,整數(shù)表示正向偏移,負數(shù)表示負向偏移

第三個參數(shù)origin設定從文件的哪里開始偏移,可能取值為:SEEK_CUR、 SEEK_END 或 SEEK_SET

SEEK_SET: 文件開頭

SEEK_CUR: 當前位置

SEEK_END: 文件結(jié)尾

其中SEEK_SET,SEEK_CUR和SEEK_END和依次為0,1和2.

簡言之:

fseek(fp,100L,0);把fp指針移動到離文件開頭100字節(jié)處;
fseek(fp,100L,1);把fp指針移動到離文件當前位置100字節(jié)處;
fseek(fp,100L,2);把fp指針退回到離文件結(jié)尾100字節(jié)處。

使用實例:

#include<stdio.h>
#defineN5
typedefstructstudent{
longsno;
charname[10];
floatscore[3];
}STU;
 
voidfun(char*filename,STUn)
{
FILE*fp;
fp=fopen(filename,"rb+");
fseek(fp,-1L*sizeof(STU),SEEK_END);
fwrite(&n,sizeof(STU),1,fp);
fclose(fp);
}
 
voidmain()/*修改覆蓋最后一個學生數(shù)據(jù)*/
{
STUt[N]={{10001,"MaChao",91,92,77},{10002,"CaoKai",75,60,88},
{10003,"LiSi",85,70,78},{10004,"FangFang",90,82,87},
{10005,"ZhangSan",95,80,88}};
STUn={10006,"ZhaoSi",55,70,68},ss[N];
inti,j;FILE*fp;
fp=fopen("student.dat","wb");
fwrite(t,sizeof(STU),N,fp);
fclose(fp);
fp=fopen("student.dat","rb");
fread(ss,sizeof(STU),N,fp);
fclose(fp);
printf("\nTheoriginaldata:\n\n");
for(j=0;j<N;j++)
{
printf("\nNo:%ldName:%-8sScores:",ss[j].sno,ss[j].name);
for(i=0;i<3;i++)printf("%6.2f",ss[j].score[i]);
printf("\n");
}
fun("student.dat",n);
printf("\nThedataaftermodifing:\n\n");
fp=fopen("student.dat","rb");
fread(ss,sizeof(STU),N,fp);
fclose(fp);
for(j=0;j<N;j++)
{
printf("\nNo:%ldName:%-8sScores:",ss[j].sno,ss[j].name);
for(i=0;i<3;i++)printf("%6.2f",ss[j].score[i]);
printf("\n");
}
}

到此這篇關(guān)于C語言 fseek(f,0,SEEK_SET)函數(shù)案例詳解的文章就介紹到這了,更多相關(guān)C語言 fseek(f,0,SEEK_SET)函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 利用C語言模擬實現(xiàn)qsort,strcpy,strcat,strcmp函數(shù)

    利用C語言模擬實現(xiàn)qsort,strcpy,strcat,strcmp函數(shù)

    這篇文章主要為大家詳細介紹了如何通過C語言模擬實現(xiàn)qsort(采用冒泡的方式),strcpy,strcat,strcmp等函數(shù),文中的示例代碼講解詳細,感興趣的可以了解一下
    2022-11-11
  • C語言實現(xiàn)圖的最短路徑Floyd算法

    C語言實現(xiàn)圖的最短路徑Floyd算法

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)圖的最短路徑Floyd算法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • C++如何計算二進制數(shù)中1的個數(shù)

    C++如何計算二進制數(shù)中1的個數(shù)

    這篇文章主要介紹了C++如何計算二進制數(shù)中1的個數(shù),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • C/C++程序設計的基本概念詳解

    C/C++程序設計的基本概念詳解

    這篇文章主要介紹了C++程序設計的基本概念詳解,文中有非常詳細的C語言使用教程及相關(guān)基礎(chǔ)知識,對正在學習c語言的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-09-09
  • C++中線程池ThreadPool源碼解析

    C++中線程池ThreadPool源碼解析

    線程池(threadpool)作為五大池之一(內(nèi)存池、連接池、線程池、進程池、協(xié)程池),線程池的應用非常廣泛,不管事客戶端程序還是后臺服務端,都是提高業(yè)務處理能力的必備模塊
    2022-09-09
  • C語言實現(xiàn)紙牌游戲之小貓釣魚算法

    C語言實現(xiàn)紙牌游戲之小貓釣魚算法

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)紙牌游戲之小貓釣魚算法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • C/C++實現(xiàn)枚舉網(wǎng)上鄰居信息的示例詳解

    C/C++實現(xiàn)枚舉網(wǎng)上鄰居信息的示例詳解

    在Windows系統(tǒng)中,通過網(wǎng)絡鄰居可以方便地查看本地網(wǎng)絡中的共享資源和計算機,本文將介紹一個簡單的C++程序,使用Windows API枚舉網(wǎng)絡鄰居信息,并獲取對端名稱、本機名稱、主機名稱以及主機IP等信息,文中通過代碼示例給大家講解非詳細,需要的朋友可以參考下
    2023-12-12
  • C語言 數(shù)據(jù)結(jié)構(gòu)鏈表的實例(十九種操作)

    C語言 數(shù)據(jù)結(jié)構(gòu)鏈表的實例(十九種操作)

    這篇文章主要介紹了C語言 數(shù)據(jù)結(jié)構(gòu)鏈表的實例(十九種操作)的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • 亞馬遜經(jīng)典面試題實例詳解

    亞馬遜經(jīng)典面試題實例詳解

    這篇文章主要介紹了亞馬遜經(jīng)典面試題實例詳解的相關(guān)資料,希望通過本文能幫助到大家,讓大家學習理解這部分內(nèi)容,需要的朋友可以參考下
    2017-10-10
  • 詳解C++ 中的臨時對象

    詳解C++ 中的臨時對象

    這篇文章主要介紹了C++ 中的臨時對象的相關(guān)資料,幫助大家更好的理解和學習c++,感興趣的朋友可以了解下
    2020-08-08

最新評論

惠来县| 宁都县| 金溪县| 勃利县| 庐江县| 大洼县| 德昌县| 屏边| 民勤县| 涞源县| 安乡县| 贡觉县| 临沂市| 青岛市| 古交市| 二连浩特市| 南川市| 天全县| 措勤县| 于都县| 鞍山市| 宁德市| 苍溪县| 高雄县| 塔河县| 手游| 怀柔区| 舟曲县| 加查县| 玉环县| 谷城县| 利津县| 大兴区| 西畴县| 大埔区| 金山区| 万全县| 昆明市| 上犹县| 青铜峡市| 象山县|