第章文件C語言程序設(shè)計(jì)譚浩強(qiáng)第三_第1頁
第章文件C語言程序設(shè)計(jì)譚浩強(qiáng)第三_第2頁
第章文件C語言程序設(shè)計(jì)譚浩強(qiáng)第三_第3頁
第章文件C語言程序設(shè)計(jì)譚浩強(qiáng)第三_第4頁
第章文件C語言程序設(shè)計(jì)譚浩強(qiáng)第三_第5頁
已閱讀5頁,還剩21頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第12章文件C文件概述文件類型指針文件的打開與關(guān)閉文件的讀寫文件的定位出錯(cuò)的檢測文件輸入輸出小結(jié)12.1C文件概述文件:存儲(chǔ)在外部介質(zhì)上數(shù)據(jù)的集合,是操作系統(tǒng)數(shù)據(jù)管理的單位使用數(shù)據(jù)文件的目的1、數(shù)據(jù)文件的改動(dòng)不引起程序的改動(dòng)——程序與數(shù)據(jù)分離2、不同程序可以訪問同一數(shù)據(jù)文件中的數(shù)據(jù)——數(shù)據(jù)共享3、能長期保存程序運(yùn)行的中間數(shù)據(jù)或結(jié)果數(shù)據(jù)文件分類按文件的邏輯結(jié)構(gòu):記錄文件:由具有一定結(jié)構(gòu)的記錄組成(定長和不定長)流式文件:由一個(gè)個(gè)字符(字節(jié))數(shù)據(jù)順序組成按存儲(chǔ)介質(zhì):普通文件:存儲(chǔ)介質(zhì)文件(磁盤、磁帶等)設(shè)備文件:非存儲(chǔ)介質(zhì)(鍵盤、顯示器、打印機(jī)等)按數(shù)據(jù)的組織形式:文本文件:ASCII文件,每個(gè)字節(jié)存放一個(gè)字符的ASCII碼二進(jìn)制文件:數(shù)據(jù)按其在內(nèi)存中的存儲(chǔ)形式原樣存放如int型數(shù)10000=0x27100010011100010000內(nèi)存存儲(chǔ)形式0010011100010000二進(jìn)制形式0011000100110000001100000011000000110000ASCII形式文本文件特點(diǎn):存儲(chǔ)量大、速度慢、便于對字符操作二進(jìn)制文件特點(diǎn):存儲(chǔ)量小、速度快、便于存放中間結(jié)果文件處理方法緩沖文件系統(tǒng):高級文件系統(tǒng),系統(tǒng)自動(dòng)為正在使用的文件開辟內(nèi)存緩沖區(qū)非緩沖文件系統(tǒng):低級文件系統(tǒng),由用戶在程序中為每個(gè)文件設(shè)定緩沖區(qū)磁盤文件輸出文件緩沖區(qū)輸入文件緩沖區(qū)程序數(shù)據(jù)區(qū)a緩沖文件系統(tǒng):緩沖區(qū)指令區(qū)程序用戶數(shù)據(jù)區(qū)磁盤非緩沖文件系統(tǒng):12.2文件類型指針文件結(jié)構(gòu)體FILE緩沖文件系統(tǒng)為每個(gè)正使用的文件在內(nèi)存開辟文件信息區(qū)文件信息用系統(tǒng)定義的名為FILE的結(jié)構(gòu)體描述FILE定義在stdio.h中typedefstruct{shortlevel;//緩沖區(qū)“滿”或“空”的程度unsignedflags;//文件狀態(tài)標(biāo)志charfd;//文件描述符unsignedcharhold;//如無緩沖區(qū)不讀取字符shortbsize;//緩沖區(qū)的大小unsignedchar*buffer;//數(shù)據(jù)緩沖區(qū)的位置unsignedchar*curp;//指針,當(dāng)前的指向unsignedistemp;//臨時(shí)文件,指示器shorttoken;//用于有效性檢查}FILE;文件類型指針指針變量說明:FILE*fp;用法:文件打開時(shí),系統(tǒng)自動(dòng)建立文件結(jié)構(gòu)體,并把指向它的指針返回來,程序通過這個(gè)指針獲得文件信息,訪問文件文件關(guān)閉后,它的文件結(jié)構(gòu)體被釋放文件結(jié)構(gòu)體文件類型指針磁盤fp12.3文件的打開與關(guān)閉C文件操作用庫函數(shù)實(shí)現(xiàn),庫函數(shù)包含于stdio.h★三個(gè)標(biāo)準(zhǔn)文件:標(biāo)準(zhǔn)輸入------鍵盤stdin標(biāo)準(zhǔn)輸出------顯示器stdout標(biāo)準(zhǔn)出錯(cuò)輸出-----顯示器stderr對這三個(gè)標(biāo)準(zhǔn)文件系統(tǒng)是自動(dòng)打開和關(guān)閉(不需要語句來操作)★對文件的讀寫應(yīng)該按指定的操作方式打開打開文件使用方式:打開文件-->文件讀/寫-->關(guān)閉文件★打開文件fopen函數(shù)原型:FILE*fopen(char*name,char*mode)功能:按指定方式打開指定的文件返值:正常打開,為指向文件結(jié)構(gòu)體的指針;打開失敗,為NULL要打開的文件名使用文件方式例FILE*fp;fp=fopen(“d:\\sha\\bkc\\test.dat”,”r”);

例FILE*fp;char*filename=“d:\\sha\\bkc\\test.dat”fp=fopen(filename,”r”);

“r+/rb+”(讀寫)“a/ab”(追加)“w/wb”(只寫)“r/rb”(只讀)“w+/wb+”(讀寫)“a+/ab+”(讀寫)為輸入打開一個(gè)文本/二進(jìn)制文件為輸出打開或建立一個(gè)文本/二進(jìn)制文件為讀/寫打開一個(gè)文本/二進(jìn)制文件為讀/寫建立一個(gè)文本/二進(jìn)制文件為讀/寫打開或建立一個(gè)文本/二進(jìn)制文件向文本/二進(jìn)制文件尾追加數(shù)據(jù)文件使用方式含義關(guān)于exit()函數(shù)1)用法:voidexit([程序狀態(tài)值]);2)功能:關(guān)閉已打開的所有文件,結(jié)束程序運(yùn)行,返回操作系統(tǒng),并將“程序狀態(tài)值”返回給操作系統(tǒng)。當(dāng)“程序狀態(tài)值”為0時(shí),表示程序正常退出;非0值時(shí),表示程序出錯(cuò)退出。例文件打開與測試FILE*fp;fp=fopen(“aa.c”,“r”);if(fp==NULL){printf(“Fileopenerror!\n”);

exit(0);}說明:1、用帶"r"的方式("r"、"rb"、"r+"、"rb+")打開文件時(shí),若文件不存在,則返回NULL指針。一般用以下方式檢查是否成功打開:exit(0)是程序返回操作系統(tǒng)。文件關(guān)閉fclose作用:使文件指針變量與文件“脫鉤”,釋放文件結(jié)構(gòu)體和文件指針函數(shù)原型:intfclose(FILE*fp)功能:關(guān)閉fp指向的文件返值:正常關(guān)閉為0;出錯(cuò)時(shí)EOF(-1)文件打開時(shí)返回的文件類型指針磁盤文件輸出文件緩沖區(qū)輸入文件緩沖區(qū)程序數(shù)據(jù)區(qū)a緩沖文件系統(tǒng):fclose不關(guān)閉文件可能會(huì)丟失數(shù)據(jù)12憐.4文件斑的讀罷寫文件講打開目之后煎,就穿可以觸對它繩進(jìn)行首讀與寨寫的勻操作渣了。1讀/犬寫文析件中瞧的一摔個(gè)字熔符2讀/粘寫一違個(gè)字躍符串3讀/過寫一夾個(gè)數(shù)敢據(jù)塊4對文澆件進(jìn)夫行格幼式化秘讀/悟?qū)?2必.4文件枕的讀嘆寫1、字絲式符I/O:胃fp赤ut禿c與fg閉et梅cfp射ut喊c函數(shù)宮原型:in遍tfp凝ut哈c(培in沾tc,翼F準(zhǔn)IL角E牙*fp)功能絹:把嶼一字架節(jié)代卵碼c寫入fp指向永的文穿件中返值賓:正蒜常,叔返回c;出錯(cuò)現(xiàn),為EO希Ffg尸et且c函數(shù)伴原型塔:in毒tfg鼓et族c(朗FI仿LE*fp)功能單:從fp指向索的文造件中舊讀取一字徹節(jié)代只碼返值牙:正巴常,崗返回認(rèn)讀到撫的代鄭碼值慮;讀摔到文級件尾前或出憶錯(cuò),艦為EO驗(yàn)F文件I/陸O與終庸端I/厭O#d哪ef漫in鐮epu借tc糧(c剪h,扯fp)fp社ut孝c(亦ch阻,f開p)#d數(shù)ef它in泛ege質(zhì)tc鼓(f武p)fg占et復(fù)c(把fp)#d獲ef陳in巡壽epu抓tc吹ha石r(稻c銳)fp腹ut忽c(旦c,棕st援do憂ut)#d劑ef劇in毒ege汽tc仁ha郊r(挎)fg陰et敘c(饅st皮di練n)例12愿.1從鍵步盤輸各入字缺符,逐個(gè)挑存到京磁盤處文件較中,直到鼓輸入季‘#“為止#i跑nc正lu劣de使<st勝di妄o.析h>ma姨in昌(){匯F撫IL秋E跑*fp;ch騙arch,*茫fi隸le倍na南me業(yè)=“薪ou攪t.舞tx繪t”釋;if教((面fp=fo溜pe瘋n(秘fi尊le嗓na長me減,"譜w")瓶)=息=N雙UL灘L){pr哀in急tf戴("評ca利nn增otop裹en新f珠il湯e\衫n"吵);ex緣瑞it鼠(0作);}pr撿in誕tf廚("上Pl個(gè)ea壇sein殊pu賣t查st撐ri勵(lì)ng投:"億);ch=ge襲tc喪ha她r()桐;wh黑il焰e(蹲ch!=嶼'#磚'){fp饑ut顛c(蚊ch軍,f申p);pu瓜tc冰ha民r(孤ch);ch=ge榴tc閘ha小r()蔑;}fc浩lo父se鞭(f慢p);}運(yùn)行這情況故如下剪:co擇mp說ut雁er#(輸入去)co釣mp含ut韻er(輸選出)同時(shí)革寫到傭文件ou緣瑞t.喇tx堡t里例邁讀焦文本衰文件露內(nèi)容何,并顯鏟示#i扛nc忍lu州de茂<st緞di損o.丸h>ma偷in志(){嗎F注IL輩E漿*fp;ch庸arch,*祥fi潛le府na衛(wèi)me虹=“刊ou卻t.脂tx鍛t”錄;if茫((累fp=fo鞋pe撐n(略fi默le使na圍me樣,”旁r")附)=框=N駛UL孝L){pr餐in途tf威("北ca屈nn洋otop勝en猛f沃il播e\熊n"嶼);ex責(zé)it拖(0踩);}wh便il撈e(敢(ch=fg竟et蛙c(恭fp))!狡=EO隔F)pu暖tc秩ha篩r(蘆ch);fc孔lo兩se購(f苗p);}判斷妨文本忘文件握是否敢結(jié)束判斷二進(jìn)憂制文件獅是否隱結(jié)束wh蔬il欺e(烤!fe肅of(f俱p)){滋c庸=fg叮et裕c(制fp);……康..}例12.2文件拷貝fe斤of函數(shù)嶼原型庸:in循tfe該of褲(F杰IL螺E*fp)功能粱:判蕉斷文削件是附否結(jié)放束返值穩(wěn):文筆件結(jié)鼻束,干返回穩(wěn)真(弱非0脖);催文件襪未結(jié)科束,單返回?cái)_0#i火nc骨lu膨de器<st鋒di聰o.舊h>ma案in揉(){腳FI倉LE保*罩in亡,相*o莖ut舅;ch夫ar剩c卸h,行in屑fi肅le僚[1令0]琴,o堅(jiān)ut藝fi脖le像[1傍0]起;sc渠an革f(驗(yàn)"%么s"釣,i棉nf靜il竭e);sc旁an鋼f(質(zhì)"%捧s"淺,o祥ut柄fi踐le);if蔥(功(i麻n局=fo匙pe噴n(襪in光fi更le,師"r蘋")懶)=攏=徐NU徒LL趙){pr刃in團(tuán)tf團(tuán)("徑Ca虧nn疼otop憤enin瞇fi濤le鉆.\帆n")燃;ex屬it視(0賺);}if((丟ou嫩t拼=fo驅(qū)pe江n(聚ou咱tf芹il脖e,憑"w矩")題)=殃=金NU顧LL){pr孝in師tf撞("衫Ca吳nn鉗otop查enou勿tf杏il膜e.硬\n")喪;ex父it糾(0答);}wh園il樓e森(!fe失of灰(i喇n))fp學(xué)ut抽c(躁fg上et從c(玩in),栽o盛ut倡);fc融lo質(zhì)se自(i頭n);fc攜lo桿se精(o銅ut);}運(yùn)行漆情況僻如下閑:fi膛le眉1.爸cfi語le喬2.嶺c程序推運(yùn)行疼結(jié)果物:將fi糾le咳1.厘c文件們中的秘內(nèi)容復(fù)制攜到fi馬le比2.痕c中去映。2、數(shù)舒據(jù)塊I/O:惠fr叔e(cuò)a閃d與fw尾ri脾te函數(shù)奶原型粗:si列ze壇_tfr疊ea盾d(筑vo再id*b鑒uf滔fe勒r,揮si傾ze旗_t廟si鼠ze懂,盈si姿ze礙_t羊co犧un宅t,述FI榨LE血*fp)si什ze期_tfw雁ri弟te皂(v醒oi條d*b團(tuán)uf以fe期r,結(jié)si鑰ze招_t笨si榴ze喪,帳si即ze盛_t非co和un盜t,室FI刺LE因*fp)功能吊:讀/寫數(shù)董據(jù)塊返值屑:成息功,貍返回乒讀/寫的銅塊數(shù)公;出崖錯(cuò)或御文件嫌尾,往返回0說明奴:ty編pe笨de我fun能si紛gn蛾ed晨s肆iz犧e_慕t;bu賄ff校er策:指向鳳要輸淘入/墓輸出雪數(shù)據(jù)密塊的重首地撇址的鞏指針si升ze蒼:每個(gè)舅要讀瓜/寫慨的數(shù)播據(jù)塊堵的大鉗小(羽字節(jié)壇數(shù))co笛un谷t:要讀諸/寫浴的數(shù)揭據(jù)塊壟的個(gè)獎(jiǎng)數(shù)fp:要讀冠/寫魄的文押件指郊針fr劍ea督d與fw主ri霧te一般鴨用于二進(jìn)欄制文覽件的輸慰入/申輸出2、數(shù)用據(jù)塊驗(yàn)讀寫杯函數(shù)(fr作ea償d()和fw雕ri盞te()估)函數(shù)絨調(diào)用:fr擦ea澡d(b噴uf鼠fe贏r,懶si墊ze鏡,c錢ou歇nt,fp);fw乳ri謠te盼(b勻uf涌fe帆r,潮si超ze斷,c矮ou杰nt是,f狠p);參數(shù)邊說明蹈:bu刃ff洋er:是戲一個(gè)災(zāi)指針姥。對fr旱ea優(yōu)d來說董,它唉是讀沿入數(shù)倉據(jù)的退存放首地址筋。對fw柔ri異te來說姜,是吃要輸捧出數(shù)穿據(jù)的立存放首地址。si慶ze高:每纖個(gè)要奸讀/嚇寫的超數(shù)據(jù)磨塊的哀大小片(字旅節(jié)數(shù)?。ヽo粘un未t:扮要讀朗/寫股的數(shù)礎(chǔ)據(jù)塊本的個(gè)兼數(shù)fp勺:用來譽(yù)讀寫炭的文件腰型指蓋針。fr酸ea冰d與fw樹ri唱te一般筋用于腿二進(jìn)尾制文驕件的姿輸入/輸出例fl銷oa恰t推f尊[1搞0]芳;FI圾LE攤*fp;fp=fo袖pe井n(弄“d:牽\\抓sh囑a\嚇\a抬a.眨da偵t”,紡“r辯b”)堪;fr訪ea垮d(裝f,奔4,撥2,籃fp營);文件予以二揚(yáng)進(jìn)制承讀形式議打開怖,此贈(zèng)函數(shù)煮從fp所指伙向的載文件d:脅\\稼sh爆a\翠\a減a.堂da裕t中讀洪入2個(gè)塊娃長4個(gè)字解節(jié)的先數(shù)據(jù)廟,存尋儲(chǔ)到顏數(shù)組f中。fo鍬r(蘆i=咱0;隆i<肥2;澆i+強(qiáng)+)fr返ea駱d(殿&f欠[i茫],便4,遵1,移fp殺);例st戒ru量ctst肆ud翼en慎t{in事tnu捕m;ch焰ar浩na嚷me耍[2桶0]墊;ch壤ar聯(lián)s渠ex縱;in詞tag貨e;fl群oa艘t都s插co足re吵[3狀];}s唱tu煤d[踢10方];fo璃r(鎮(zhèn)i=脾0;運(yùn)i<殿10院;i藝++驅(qū))fr決ea閥d(多&s福tu騾d[找i]我,s窯iz尸eo幅f(妻st豪ru漸ctst修ud司en度t)壟,1坦,f僵p)慘;fw錫ri槐te浩(&若st銹ud病[i駛],絮si禽ze蘆of憶(s贊tr偉uc睡tst括ud雹en扭t)合,1柔,f斑p)仔;例12菌.3從鍵才盤輸烈入4個(gè)學(xué)嗽生數(shù)腦據(jù),追把他拉們轉(zhuǎn)紋存到載磁盤氏文件涌中去#i娛nc蔑lu撕de北<st結(jié)di件o.朗h>#d桐ef準(zhǔn)in消e汁SI框ZE會(huì)2st滿ru外ctst劃ud術(shù)en我t_飽ty迎pe{胞c標(biāo)ha獄r目na借me蓋[1推0]恨;in挎tnu爹m;in露tag新e;ch闊ar搶a尼dd糖r[嘗15者];}st予ud斬[S猴IZ尼E];/*定義豆結(jié)構(gòu)摩*/ma制in僵(){in干ti;fo愉r(航i=避0;易i<埋SI漲ZE核;i慘++口)sc繁an括f(渾"%尿s%謠d%陪d%龍s"粱,s奔tu議d[竭i]尼.n觸am煉e,漆&s則tu開d[魄i]食.n蔥um,&st墻ud斥[i訓(xùn)].駱ag恨e,攪st產(chǎn)ud滾[i狗].姥a(bǔ)d方dr);sa咳ve摸()泊;/拐/寫入紀(jì)到文必件st梨u_另da貫tdi狗sp圣la庫y(極);再從st起u_邁da勢t中讀}vo性id趨s慈av湯e(疾)//從內(nèi)摧存數(shù)屆組st拐ud寫入威到文柄件st腎u_抱da向t中{率FI猜LE給*fp;in窩ti;if吃((fp=fo疼pe幫n("層d炊:\億\s灣ha速\\縮慧1\設(shè)\s霸tu彩_d很at泉"茫,"wb")趕)=怨=N累UL貼L){pr希in禍tf單("租ca陜nn勁otop啞en扶f酬il港e\襯n"止);re唇tu珠rn作;}fo菌r(便i=巾0;芹i<架SI皮ZE榴;i仗++字)if(f久wr如it消e(偵&s扛tu定d[夸i]完,s后iz粱eo盛f(繩st稿ru野ctst擺ud山en頂t_撤ty草pe毅),腦1,染fp才)!贊=1)pr窩in厭tf幻玉("鉤fi羽lewr低it液e廳er獻(xiàn)ro舟r\竄n"托);fc套lo瞧se柜(f站p);}vo圓id揉d額is炸pl壘ay水()事//再從st魄u_瞇da精t中讀預(yù)到內(nèi)赴存數(shù)尋組st運(yùn)ud中{碼FI分LE丟*fp;in帽ti;if昏((fp=f圍op謎en叉(“尊d:嶺\\塘sh子a\矩\1桑\\協(xié)st終u_苗da繡t"澡,"污rb咽")洗)=渣=N陜UL杰L){pr扁in兆tf指("袋c(diǎn)a寶nn夠otop帥en瘡f步il貫e\貞n"幅);re抹tu洪rn沃;}fo品r(疏i=澤0;虧i<欠SI重ZE益;i究++竟){fr掙ea首d(蕉&s椒tu順d[男i]濕,s老iz站eo打f(廚st叮ru黨ctst錘ud姨en痕t_竊ty妹pe火),斜1,盲fp蒼);pr信in良tf兔("誼%-讓10澤s飽%4塞d前%4榆d僚%-句15種s\旬n"厲,s扎tu跨d[服i]飛.n種am純e,st副ud梯[i巡壽].霧nu藝m,虛st零ud拿[i柜].徑ag饑e,匯st愈ud播[i膝].湯ad椅dr);}fc陜lo貌se脆(f禍p);}3、格鐮式化I/O:績fp翁ri呼nt額f與fs膛ca鵲nf函數(shù)蔬原型沙:in償tfp壓ri郊nt咳f(魂FI移LE*fp運(yùn),c前on想stch才ar這*f蠢or拼ma煩t[偏,a從rg觀um龜en豎t,盾…]漫)in知tfs懸ca哥nf估(F往IL豪E*fp筐,c廢on叫stch先ar威*f須or提ma也t[狀,a撐dd悅re鈴ss嗽,…玻])功能液:按貓格式林對文洽件進(jìn)融行I/亦O操作返值跌:成鎖功,返回I/枯O的個(gè)義數(shù);出錯(cuò)輝或文啊件尾,返回EO市F例fp得ri長nt備f(譜fp質(zhì),“已%d斯,%蛾6.導(dǎo)2f徑”,蘿i,畏t)憐;//將i和t按%d,席%6擔(dān).2寬f格式傅輸出鑒到fp文件fs鳴ca狼nf舒(f妙p,愿“%欠d,土%f評”,送&i漲,&紹t);//若文征件中怎有3稍,4椅.5巖,則漠將3木送入i,性4辮.5送入t例舞從脈鍵盤疑按格艇式輸俘入數(shù)注據(jù)存錢到磁外盤文瞧件中方去#i態(tài)nc狐lu必de均<st爭di她o.熔h>ma潔in剖(){萍ch魂ar堂s灰[8汗0]霉,c饞[8第0]謀;in王ta,劫b;FI廁LE眠*fp;if((森fp=fo寄pe愉n(上"t懂es分t"證,"朗w")棄)=嫩=N攔UL拆L){旺pu厘ts娘("闊ca坊n'難t票op督en魂f載il完e"倦);沿e德xi監(jiān)t(譽(yù))澆;柳}fs雹ca引nf反(s變td殺in風(fēng),"線%s親%d敲",蝴s,洋&a);/河*r剩ea坐d柴fr結(jié)omke笛a(bǔ)b比oa香rd*/fp拉ri焰nt脅f(斥fp連,"來%s%d撤",鬼s,常a);/漢*w呼ri雀te吩t艱o叫fi蓮le臘*/fc貧lo討se昂(f挽p);if緊((fp=fo溉pe尖n(存"t舅es刻t"滲,"棋r")淡)=懲=N晨UL攏L){完pu階ts楊("哥ca捧n'襯t怕op添en悅f嶄il濕e"是);杠e眼xi頁t(腔);普}fs吐ca嫩nf碑(f者p,遭"%咱s%獨(dú)d"仗,c拍,&逆b);/*敏re蠅ad趙f興ro也m肌fi躺le奧*/fp銀ri短nt四f(懶st稠do旱ut再,"播%s%d緒",拴c,缸b)宮;/*修pr朵in蹈t純to門s越cr榮ee枯n*因/fc纏lo響se間(f鴉p);}4、字享符串I/淺O:fg則et句s與fp敗ut約s函數(shù)填原型物:ch貿(mào)ar喚*fg磁et廈s(叛ch數(shù)ar*s,定in捧tn,愁FI厚LE地*fp)in咸tfp勇ut籃s(診ch感ar*s竭,F扶IL避E挖*fp)功能村:從fp指向弦的文繳件讀揉/寫追一個(gè)礙字符枕串返值聽:fg執(zhí)et墳s正常鑰時(shí)返崖回讀例取字拌符串柏的首剝地址辜;出快錯(cuò)或蒸文件自尾,窗返回NU功LLfp網(wǎng)ut宅s正常澡時(shí)返感回寫賴入的誦最后講一個(gè)取字符霸;出噸錯(cuò)為EO預(yù)F例筐從鍵遞盤讀所入字媽符串域存入傍文件歸,再賣從文民件讀吳回顯圖示fg舞et劍s從fp所指油文件板讀n-附1個(gè)字薄符送疼入s指向恢的內(nèi)祥存區(qū)希,并在字最后魔加一仔個(gè)‘蘭\0睡’(若款讀入n-艇1個(gè)字御符前諷遇換賀行符刪或文帝件尾老(EO藍(lán)F)即結(jié)處束)fp天ut始s把s指向案的字追符串獎(jiǎng)寫入fp指向耕的文盯件#i暑nc改lu房誠de根<st借di脫o.每h>ma眨in涂(){乘FI沖LE敲*fp;ch騾ar核st寶ri吸ng早[8櫻1]手;if妹((fp=fo界pe距n(憑"f限il叫e.貞tx絮t"冠,"癢w")喬)=碑=N擺UL白L){pr留in樸tf漁("恭ca襲nn翻'top新en井f例il累e"遷);肝ex憶it折(0晌);萬}wh價(jià)il己e(摘st吊rl遼en螞(g勤et菜s(凱st饑ri辮ng))乒>0梳){fp柱ut失s(遞st痛ri面ng茶,f蝦p);fp婚ut且s(稀"\稀n"質(zhì),f撥p);}fc依lo繩se怠(f搶p);if嫁((fp=fo爪pe浸n(折"f誕il支e.客tx蚊t"筋,"陣r")魄)=濾=N艱UL換L){pr延in黎tf唯("荒ca牧nn暗'top繳en僻f狐il涂e"紅);討ex繪it妖(0誘);續(xù)}wh嶺il鮮e(fg瞎et攜s(剛st吃ri儲(chǔ)ng發(fā),8路1,鄰fp賽)!耀=N沾UL剃L)fp冠ut牢s(腥st害ri六ng馬,s紡td丈ou毒t);fc使lo棟se有(f稍p);}12鞠.5文件劈燕的定賤位幾個(gè)僑概念文件忌位置濤指針--美--太-指向祝當(dāng)前色讀寫某位置傳的指日針讀寫嬸方式順序護(hù)讀寫屆:位絹置指努針按楚字節(jié)已位置婚順序吊移動(dòng)倚,叫~隨機(jī)煙讀寫勾:位蘇置指捕針按糧需要舊移動(dòng)爽到任序意位腔置,牲叫~1、re居wi話nd函數(shù)函數(shù)唐原型焰:vo亮id柜re液wi扛nd意(F豆IL濃E戴*fp)功能乏:重親置文雄件位傻置指規(guī)針到苗文件慌開頭返值券:無例坐對懼一個(gè)弄磁盤抱文件伸進(jìn)行及顯示撤和復(fù)居制兩扭次操頃作#i封nc耳lu冶de何<st疾di寶o.抄h(huán)>ma峽in棵(){古FI誘LE歐*莊fp剪1,回*f抬p2霜;fp蜘1=fo汽pe款n(鐮"d洽:\粉\s疲ha栽\\壤bk毛\\突4.賭c"沖,"望r"匠);fp蚊2=f汗op驗(yàn)en藥("爭d:妄\\警sh網(wǎng)a\雕\b趙k\抓\4此1.抄c"箭,"誓w"寒);wh時(shí)il凡e(!績fe輔of欺(f傭p1))旋pu碎tc爭ha崖r(刮ge禿tc匙(f叉p1猴))晶;re少wi角nd搏(f鍋p1鞋);wh網(wǎng)il盯e(閱!f四eo柳f(堆fp輕1)看)pu固tc楚(g呢et做c(敘fp暫1)鳥,f食p2非);fc策lo計(jì)se題(f敞p1欣);fc瀉lo霧se殃(f約p2銀);}2、fs助ee歌k函數(shù)函數(shù)妹原型李:in蘭tfs降ee番k(賣FI繭LE*fp雨,l院on肉gof瓜fs全et恩,i腰ntwh分en姓ce收)功能烏:改傍變文律件位船置指碑針的拒位置返值處:成垮功,釘返回瓶0;閘失敗馬,返臥回非暈0值文件亭指針位移別量(旦以起背始點(diǎn)訪為基固點(diǎn),凡移動(dòng)細(xì)的字稠節(jié)數(shù)運(yùn))>0前進(jìn)濃移動(dòng)<0后退凝移動(dòng)起始鄉(xiāng)豐點(diǎn)文件收開始SE輔EK茫_S飄ET夠0文件即當(dāng)前塔位置SE績EK獲_C限UR輕1文件裙末尾SE鮮EK漠_E食ND遣2例fs瞧ee說k(睬fp些,1扔00腥L,赴0)幕;fs頑ee漸k(慮fp論,5嶄0L疑,1揀);fs冷ee旱k(數(shù)fp倒,-皆10星L,蛛2)鼓;3、ft蔬el篩l函數(shù)函數(shù)譽(yù)原型居:lo要ngft做el狀l(旺FI蘇LE*fp)功能女:返隱回位袖置指委針當(dāng)煉前位褲置(缺用相壁對文桃件開董頭的耀位移蠅量表坦示)返值狂:成皺功,所返回獸當(dāng)前筑位置誘指針伯位置屆;失素?cái)?,褲返回?1L,例完磁筆盤文貝件上襪有3個(gè)學(xué)害生數(shù)色據(jù),盤要求業(yè)讀入捕第1,3學(xué)生會(huì)數(shù)據(jù)棗并顯紐奉示main(){inti;FILE*fp;if((fp=fopen("studat","rb"))==NULL){printf("can'topenfile\n");exit(0);}for(i=0;i<3;i+=2){fseek(fp,i*sizeof(structstudent_type),0);

fread(&stud[i],sizeof(structstudent_type),1,fp);printf("%s%d%d%s\n",stud[i].name,stud[i].num,stud[i].age,stud[i].addr);}fclose(fp);}#include<stdio.h>structstudent_type{intnum;charname[10];intage;charaddr[15];}stud[3];#in叫cl象ud他e"垃st運(yùn)di語o.股h"ma始in紅(){剛FI而LE堵*fp;ch祥ar直f罵il軍en錯(cuò)am兵e[昆80潤];lo央ng麥l殖en間gt客h;ge穿ts剛(f姨il紛en把a(bǔ)m紅e)問;fp=fo牢pe切n(魯fi梅le投na倍me歲,"沿rb")征;if受(f君p==峽NU狹LL獵)pr泛in尤tf苦("揉fi馳leno畜t鏡fo扮un填d!尊\n煉")修;el送se{fs潛ee雁k(救fp乘,0蓄L,敗SE鉆EK斑_(dá)E凍ND酬);le鎖ng綿th炸=ft葡el敲l(歡fp);pr汁in嘆tf擺("亦Le甘ng搖thof撐F男il匠e侄is吩%續(xù)1d啟b鹽yt化es捷\n籠",斬le酬ng理th增);fc色lo母se監(jiān)(f盾

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論