C程序設計——文件PPT課件_第1頁
C程序設計——文件PPT課件_第2頁
C程序設計——文件PPT課件_第3頁
C程序設計——文件PPT課件_第4頁
C程序設計——文件PPT課件_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、9文件,解析c程序設計第2章簡單計程儀程序設計,2、文件系統(tǒng)、緩沖型文件系統(tǒng):系統(tǒng)自動在存儲器中按每個文件打開緩沖器,作為程序計程儀程序和磁盤文件數(shù)據(jù)交換的中間介質(zhì),每3步用習語言的程序庫函數(shù)實現(xiàn), 解析c方案設計第2章簡單方案計程儀方案設計、3、文件投入產(chǎn)出相關庫函數(shù)、# include open:fopen (); 讀寫: fgetc (); fputc (); fgets (); fputs (); fread (); fwrite (); fscanf (); fprintf (); 文件位置指針rewind (); fseek (); ftell (); feof (); 關閉: f

2、close (); 法寶:每個庫函數(shù)都可以在調(diào)用時查詢。 輸入TC:CTRL F1 VC函數(shù)名稱,則會顯示函數(shù)形式的關殘奧字儀表。 c方案設計第2章簡單方案計程儀設計,4,需要解決的問題1 :將學生信息保存在文件中,從文件轉(zhuǎn)入數(shù)組,# include # definen 30 structstucharname 10; 英數(shù); 英格; 卡爾阿德德爾15; 解析c方案設計第2章簡單方案計程儀設計、5、1、輸入學生信息存儲排列、void main() struct stu boyaN、boybN、*pp、*qq; 文件* FP; 定義指向文件類型的指針fp*/int i的打印數(shù)據(jù)(I=0,PP=博

3、雅; iname,F(xiàn)ILE類型在stdio.h文件中定義。 類型結構輸入級別; 緩沖區(qū)是滿還是空*/unsigned flags; /*文件狀態(tài)標志*/char fd; /*文件描述符* /未指定的卡片保持; 沒有緩沖區(qū)不讀字符* /短大??; /*緩沖區(qū)大小* /未指定的char *緩沖區(qū); /*數(shù)據(jù)緩沖區(qū)的位置* /未簽名的char * curp; /*文件定位指針* /未標識的is temp; /*用于臨時文件指示器* /短令牌/*有效性檢查* /文件; 解析c計程儀編程第2章簡單計程儀編程,6,2,保存文件(打開文件-保存-關閉文件),/*首先打開文件*/if(fp=fopen(stu_

4、list.dat,WB ) )=null ) printf (cannen ); exit(1)、文件名(char *文件名、char *類型)示例:文件名是文件名的包含路徑。 如果沒有路徑,則打開當前目錄查詢的文件的類型是r、w、rw和a,其中只讀、只讀、讀/寫,附加的“b”表示二進制文件,如果不寫入“b”,則文本文件的返還值是指向該文件的指針存儲在ASCII查詢密碼文件中的格式: 3、0、0、0、0、(5字節(jié))存儲在二進制文件中的格式:30000的補碼(2字節(jié))、11101010 01100000、兩者的特征: ASCII文件浪費了空間和時間, 直觀的二進制文件節(jié)省空間和時間,非直觀的解析

5、c程序設計第2章簡單計程儀程序設計,7,2,保存文件(打開文件-保存-關閉文件),/*保存文件(打印到文件) */for(i=0,pp=boya; 名稱,PP -編號,pp-age,pp-addr; int fprintf(FILE *fp、char *format、arg1、argn )函數(shù):也可以在所有存儲的字符類型中使用fwrite(pp,sizeof(struct stu ),1,fp ) 、unsigned fwrite(void *ptr,unsigned size,unsigned numb,F(xiàn)ILE *fp )函數(shù)功能:將從ptr開始的numb個size大小的數(shù)據(jù)標簽搖滾樂寫入

6、fp所指向的文件中,函數(shù)調(diào)用為count的寫字符或字符串時,請使用fputc ()和fputs ()、int fputc(int c,F(xiàn)ILE *fp ); 功能:如果對fp的字母c輸出錯誤則返回EOF,否則返回c例: fputc(a,fp ); /*將文字a寫入fp指向的文件*/,int fputs(char *s,F(xiàn)ILE *fp )的功能:將文字列寫入fp指向的文件成功時為0,錯誤時為EOF例: fputs(“abcde”,fp ); /*將字符串寫入fp指向的文件*/中,c plug計程儀編程第2章簡單計程儀編程,8,2,保存文件(打開文件-保存-關閉文件),/*最后關閉文件*/fcl

7、ose(fp ),int fclose(FILE *fp ) 返還值:關閉成功時的返還值為0。 否則(例如,磁盤空間不足、受寫保護或關閉封閉的文件)返回EOF或-1。解析c計程儀編程第2章簡單計程儀編程,9,3,從文件讀入數(shù)組(打開文件-讀入數(shù)組-關閉文件),if(fp=fopen(stu_list.dat,Rb ) )=null ) printf (cannen ); 出(2)個(I=0; 輸出到iname、stdout文件后,輸出到屏幕上。 實際上,來自牛鼻子板的輸入、到屏幕的輸出、錯誤都以文件形式存儲信息。 這三個標準defile分別是stdin、stdout和stderr,從用戶的角度

8、對文件進行分類,分為標準defile和普通磁盤文件。 c方案設計解析第2章的簡單方案計程儀設計,10,需要解決的問題2 :復制文件,輸入兩個文件名,打開兩個文件,將一個文件的內(nèi)容復制到另一個文件,關閉兩個文件,c方案計程儀,第2章簡單方案計程儀,1 朝鮮、文件130、文件230; 打印(輸入源文件3360 )掃描(% s,文件1 )/*源文件名* /打印(輸入對象文件3360 )掃描(% s,文件2 )/*目標文件名*/if (FP1=foff exit(1) /*打開源文件*/if (FP2=fopen (文件2,w)=fp2=stdout; /*打開目標文件,如果找不到則輸出到屏幕*/*從

9、源文件讀取字符并寫入目標文件*/while(ch=fgetc(fp1) ) )!=EOF) fputc(ch,fp2) fclose(fp1) /*關閉兩個文件*/fclose(fp2)、解析c編程計程儀第2章簡單計程儀定編程、12,/* copy.c */#包含# includevoidmain (I 查爾斯; 魔法少女=3) puts (錯誤在參數(shù)中! ); 打開源文件(1)/*打開源文件(FP2=打開(argv 2,w ) )=fppt /*打開目標文件,如果找不到則輸出到屏幕*/*從源文件讀取字符并寫入目標文件*/while(ch=fgetc(fp1) ) )!=EOF) fputc(

10、ch,fp2) fclose(fp1) /*在編譯同時關閉兩個文件的*/fclose (FP2)/*堆計程儀欄之后,可以在dos命令行中輸入三個殘奧參數(shù)來執(zhí)行此操作。 第一個是普計程儀欄的名稱copy,第二個是源文件名,第三個是營銷對象文件名。 整個計程儀程序的功能是實現(xiàn)文件復制*/的c程序計程儀程序設計第2章簡單計程儀程序設計,13、分析隨機讀寫文件的方法嗎? 對上一份文件的讀寫都是從頭到尾依次讀(寫)。 如何只讀寫文件的一部分呢? 除了FILE *類型的指針fp指向文件的開頭之外,char *類型的文件指針curp還指向文件中的下一個要讀取(寫入)的字符。 通過改變curp的位置可以進行隨

11、機的讀寫。、c計程儀編程第2章簡單計程儀編程、14、若干相關函數(shù)、void rewind(FILE *fp )功能:將fp內(nèi)的文件位置指針移動到文件開始位置int fseek(FILE *fp,long offset, int fromwhere )的功能:將fp內(nèi)的文件位置指針置于相應的位置fromwhere: SEEK_SET或0-文件開始SEEK_CUR或1-當前位置SEEK_END或2-文件末尾long ftell 功能:返回fp中文件位置指針所在位置int feof(FILE *fp )的功能:如果文件位置指針指向fp的末尾,則返回非零值;否則返回0示例: while (feof (

12、FP )=0) c=fgetc c柱計程儀設計第2章簡單柱計程儀設計,15、#包括結構樹char name 10; 英數(shù); 英格; 卡爾阿德德爾15; boy,*qq=,示例3,解析c計程儀編程第2章簡單計程儀編程,16,示例4 :柱結構:浮動fun1(浮動x )/*函數(shù)1定義* /浮動fun2(浮動x )/*函數(shù)2定義* /浮動集成(浮動) 浮點a浮點b) /*積分函數(shù)定義*/void main () y1=對integral (fun 1,a,b) /*函數(shù)1進行積分*/y2=對integral (fun 2,a,b) /*函數(shù)2進行積分*/*實際尺殘奧參數(shù)是函數(shù)名,波形殘奧參數(shù)是函數(shù)指針,函數(shù)名是函數(shù)的參數(shù)這是指向返還值為int的函數(shù)的*/指針初始化,其中p=max; /*f是指f

溫馨提示

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

最新文檔

評論

0/150

提交評論