最新国产好看的视频,伊人天堂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ù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下

fseek(f,0,SEEK_SET);

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

fseek

函數(shù)名: fseek

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

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

描 述: 函數(shù)設(shè)置文件指針stream的位置。如果執(zhí)行成功,stream將指向以fromwhere為基準(zhǔn),偏移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ù)表示正向偏移,負(fù)數(shù)表示負(fù)向偏移

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

SEEK_SET: 文件開頭

SEEK_CUR: 當(dāng)前位置

SEEK_END: 文件結(jié)尾

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

簡言之:

fseek(fp,100L,0);把fp指針移動到離文件開頭100字節(jié)處;
fseek(fp,100L,1);把fp指針移動到離文件當(dāng)前位置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()/*修改覆蓋最后一個學(xué)生數(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ù)

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

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

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

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

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

    C/C++程序設(shè)計的基本概念詳解

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

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

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

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

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

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

    在Windows系統(tǒng)中,通過網(wǎng)絡(luò)鄰居可以方便地查看本地網(wǎng)絡(luò)中的共享資源和計算機(jī),本文將介紹一個簡單的C++程序,使用Windows API枚舉網(wǎng)絡(luò)鄰居信息,并獲取對端名稱、本機(jī)名稱、主機(jī)名稱以及主機(jī)IP等信息,文中通過代碼示例給大家講解非詳細(xì),需要的朋友可以參考下
    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)資料,希望通過本文能幫助到大家,讓大家學(xué)習(xí)理解這部分內(nèi)容,需要的朋友可以參考下
    2017-10-10
  • 詳解C++ 中的臨時對象

    詳解C++ 中的臨時對象

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

最新評論

乐清市| 孟州市| 罗山县| 泽库县| 保亭| 阿拉善左旗| 兴义市| 甘谷县| 灵台县| 集贤县| 苏尼特左旗| 托里县| 合江县| 苍山县| 普兰店市| 丹棱县| 阜平县| 榆林市| 三亚市| 崇明县| 天门市| 吕梁市| 新昌县| 太仆寺旗| 义马市| 奇台县| 抚州市| 泾阳县| 南木林县| 衡阳县| 噶尔县| 杭锦旗| 北安市| 舞阳县| 卢氏县| 邓州市| 无锡市| 来凤县| 平原县| 兰西县| 定西市|