![C++程序設計:第16章 鏈表概念_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/25/65415d5a-6e73-470c-a26c-5fb771d8c5e5/65415d5a-6e73-470c-a26c-5fb771d8c5e51.gif)
![C++程序設計:第16章 鏈表概念_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/25/65415d5a-6e73-470c-a26c-5fb771d8c5e5/65415d5a-6e73-470c-a26c-5fb771d8c5e52.gif)
![C++程序設計:第16章 鏈表概念_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/25/65415d5a-6e73-470c-a26c-5fb771d8c5e5/65415d5a-6e73-470c-a26c-5fb771d8c5e53.gif)
![C++程序設計:第16章 鏈表概念_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/25/65415d5a-6e73-470c-a26c-5fb771d8c5e5/65415d5a-6e73-470c-a26c-5fb771d8c5e54.gif)
![C++程序設計:第16章 鏈表概念_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/25/65415d5a-6e73-470c-a26c-5fb771d8c5e5/65415d5a-6e73-470c-a26c-5fb771d8c5e55.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、請將您的手機鈴聲請將您的手機鈴聲設置為振動設置為振動信息學院計算中心第2頁v鏈表概念鏈表概念v鏈表定義鏈表定義v創(chuàng)建鏈表創(chuàng)建鏈表v刪除結點刪除結點v插入結點插入結點復習回顧復習回顧信息學院計算中心第3頁鏈表:鏈表:把存放在不同地點的數(shù)據(jù)用地址鏈條把存放在不同地點的數(shù)據(jù)用地址鏈條 串接而形成的數(shù)據(jù)鏈串接而形成的數(shù)據(jù)鏈head200015201021200223200854NULL2000201020022008結點:結點:構成鏈表的元素構成鏈表的元素頭結點頭結點末結點末結點頭指針頭指針數(shù)據(jù)域數(shù)據(jù)域指針域指針域鏈表概念鏈表概念信息學院計算中心第4頁free函數(shù)函數(shù)函數(shù)原型:函數(shù)原型:void fr
2、ee(void *p) 動態(tài)存儲分配函數(shù)動態(tài)存儲分配函數(shù)calloc函數(shù)函數(shù)函數(shù)原型:函數(shù)原型:void *calloc(unsigned n, unsigned size) malloc函數(shù)函數(shù)函數(shù)原型:函數(shù)原型:void *malloc(unsigned size) 信息學院計算中心第5頁文文 件件v文件概述文件概述v文件類型指針文件類型指針v文件的打開與關閉文件的打開與關閉v文件的讀寫文件的讀寫v標準標準I/O信息學院計算中心第6頁文件概述文件概述 文件:文件:指存儲在外部介質上數(shù)據(jù)的集合指存儲在外部介質上數(shù)據(jù)的集合程序與數(shù)據(jù)分離程序與數(shù)據(jù)分離長期保存數(shù)據(jù)長期保存數(shù)據(jù)數(shù)據(jù)共享數(shù)據(jù)共享用處
3、:用處:信息學院計算中心第7頁ASCI I文件:文件:每個字節(jié)存放一個字符的每個字節(jié)存放一個字符的ASCII碼碼二進制文件:二進制文件:數(shù)據(jù)按其在內存中的存儲形式原樣存放數(shù)據(jù)按其在內存中的存儲形式原樣存放文件分類文件分類按數(shù)據(jù)的組織形式按數(shù)據(jù)的組織形式信息學院計算中心第8頁例例 用兩種文件存放整用兩種文件存放整型數(shù)型數(shù)100000000011 1110100000110001 00110000 00110000 00110000ASCII碼形式碼形式二進制形式二進制形式特點特點: :占空間多、速度慢、便于對字符操作占空間多、速度慢、便于對字符操作特點特點: :占空間少、速度快、便于存放中間結果
4、占空間少、速度快、便于存放中間結果信息學院計算中心第9頁 處理處理 文件處理文件處理緩沖文件系統(tǒng)(高級文件系統(tǒng))緩沖文件系統(tǒng)(高級文件系統(tǒng))非緩沖文件系統(tǒng)(低級文件系統(tǒng))非緩沖文件系統(tǒng)(低級文件系統(tǒng))根據(jù)對文件根據(jù)對文件操作步驟:操作步驟: 關閉關閉 打開打開 根據(jù)對文件根據(jù)對文件操作方式:操作方式:信息學院計算中心第10頁文件指針文件指針文件結構體文件結構體FILEtypedef struct short level ; /* 緩沖區(qū)滿或空標志緩沖區(qū)滿或空標志 */ unsigned mode ; /* 使用狀態(tài)標志使用狀態(tài)標志 */ int fd ; /* 文件號文件號 */ short
5、buffsize ; /* 緩沖區(qū)大小緩沖區(qū)大小 */ char *buff ; /* 緩沖區(qū)位置緩沖區(qū)位置 */ char *curp ; /* 文件指針當前的指向文件指針當前的指向*/ FILE ; FILE類型類型在頭文件在頭文件stdio.h中定義中定義信息學院計算中心第11頁定義:定義: FILE *變量名;變量名;文件打開時文件打開時 系統(tǒng)系統(tǒng)自動自動建立文件結構體,并把建立文件結構體,并把指向它的指向它的指針指針返回,程序通過這個指針獲得返回,程序通過這個指針獲得文件信息文件信息,訪問文件訪問文件文件關閉后文件關閉后文件結構體被文件結構體被釋放釋放文件指針文件指針例子:例子: F
6、ILE *fp;信息學院計算中心第12頁文件的打開文件的打開打開文件打開文件FILE *fopen(char *name, char *mode)要打開的文件名要打開的文件名使用文件方式使用文件方式信息學院計算中心第13頁文件的打開文件的打開打開文件打開文件FILE *fopen(char *name, char *mode)功能:功能:按指定方式打開文件按指定方式打開文件返值:返值:正常打開正常打開指向文件結構體的指針指向文件結構體的指針打開失敗打開失敗返回返回NULL信息學院計算中心第14頁使用方式使用方式含含 義義w/wbr/rb文件只允許讀,不允許寫文件只允許讀,不允許寫文件既允許讀也
7、允許寫文件既允許讀也允許寫 既可讀也可寫,但必須先寫后讀既可讀也可寫,但必須先寫后讀 文件允許讀也允許在尾部寫文件允許讀也允許在尾部寫 只允許在文件尾部寫只允許在文件尾部寫 文件使用方式表文件使用方式表文件只允許寫,不允許讀文件只允許寫,不允許讀a/abr+/rb+w+/wb+a+/ab+課本課本P188頁頁信息學院計算中心第15頁例例 FILE *fp,*fq; fp= fopen (c:test.dat, r); fq= fopen (test.dat, r); 文件的打開文件的打開信息學院計算中心第16頁原型:原型:int fclose(FILE *fp)功能:功能:關閉關閉fp指向的文
8、件指向的文件返值:返值:正常關閉正常關閉為為0;出錯時出錯時,非非0注意:注意:文件用完一定關閉,否則文件用完一定關閉,否則數(shù)據(jù)丟失數(shù)據(jù)丟失 影響其他文件的打開影響其他文件的打開 文件的關閉文件的關閉信息學院計算中心第17頁 #include stdio.h #include stdlib.h main( ) FILE *fp; fp=fopen(aa.c, r); if(fp=NULL) printf(File open error!n); exit(0); else printf(File open right!n); fclose(fp); 例例 文件打開與測試文件打開與測試 信息學院計
9、算中心第18頁fgetc函數(shù)函數(shù)形式形式: ch=fgetc(fp);功能:功能:從從fp所指文件中讀一字符給變量所指文件中讀一字符給變量ch范圍:范圍:ASCII文件文件文件的讀寫文件的讀寫fputc函數(shù)函數(shù)形式形式:fputc(c,fp); 功能:功能:將一個字符寫入指針將一個字符寫入指針fp所指文件中所指文件中 范圍:范圍:ASCII文件文件符號常量符號常量EOF在在stdio.h頭文件中被定義為頭文件中被定義為-1 課本課本P34頁頁信息學院計算中心第19頁fgets函數(shù)函數(shù)文件的讀寫文件的讀寫形式形式:fgets(str,n,fp);功能功能:從從fp所指文件中讀所指文件中讀n-1個
10、字符給數(shù)個字符給數(shù) 組組str,并在數(shù)組第并在數(shù)組第n個字節(jié)存入個字節(jié)存入0范圍范圍:ASCII文件文件fputs函數(shù)函數(shù)形式形式: fputs(str,fp);功能:功能:把字符串把字符串str所標識所標識的字符串的字符串(不包不包 括結束符括結束符0)寫入由指針寫入由指針fp指向的指向的 文件中去文件中去 范圍:范圍:ASCII文件文件課本課本P77頁頁信息學院計算中心第20頁#include #include void main( ) FILE *fp; char ch,*filename=out.txt; if(fp=fopen(filename,r)=NULL) printf(can
11、not open filen); exit(0); while(ch=fgetc(fp)!=EOF) putchar(ch); fclose(fp);例例 讀文本文件內容并顯示讀文本文件內容并顯示信息學院計算中心第21頁#include#include main() FILE *fp; char string81=abcde; if(fp=fopen(d:aa.txt,w)=NULL) printf(cannt open file); exit(0); fputs(string, fp); fclose(fp);例例 為文本文件寫入內容為文本文件寫入內容信息學院計算中心第22頁fwrite函數(shù)函數(shù)文件的讀寫文件的讀寫fread函數(shù)函數(shù)fscanf函數(shù)函數(shù)fprintf函數(shù)函數(shù)格式讀寫函數(shù)格式讀寫函數(shù)P P194二進制文件讀二進制文件讀寫函數(shù)寫函數(shù)P P192信息學院計算中心第23頁#include #include main() char s80,c80; int a,b; FILE *fp; if(fp=fopen(test,w)=NULL) puts(cant open file); exit(0) ; fscanf(stdin,%s%d,s,&a); fprintf(fp,%s
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 個人汽車抵押借款合同2025
- 個人債務延期還款合同協(xié)議
- 二手車交易代理服務合同
- 產(chǎn)學研實習合作合同范本
- 個人與公司租賃合同
- 上海市建筑材料供應合同
- 個人借款保證合同樣本
- 個人藝術品買賣合同范本
- 產(chǎn)業(yè)投資基金合作融資合同解析
- 二手車過戶合同樣本
- 2024-2025學年八年級數(shù)學人教版上冊寒假作業(yè)(綜合復習能力提升篇)(含答案)
- 2024年社會工作者(中級)-社會綜合能力考試歷年真題可打印
- 部編版語文四年級下冊第一單元 迷人的鄉(xiāng)村風景 大單元整體教學設計
- 湖南省長郡中學2023-2024學年高二下學期寒假檢測(開學考試)物理 含解析
- 五年級行程問題應用題100道
- 血透病人體重健康宣教
- 脾破裂護理查房
- 人教版高中物理必修一全套課件【精品】
- 動物檢疫技術-臨診檢疫技術(動物防疫與檢疫技術)
- 《華夏幸福房地產(chǎn)公司人才流失現(xiàn)狀、原因及應對策略》開題報告(文獻綜述)3400字
- 文化墻、墻體彩繪施工方案
評論
0/150
提交評論