《C語言文件重慶交大學習教案》由會員分享,可在線閱讀,更多相關《C語言文件重慶交大學習教案(39頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、會計學1C語言文件語言文件(wnjin)重慶交大重慶交大第一頁,共39頁。(wnjin)。(2)根據(jù)文件(wnjin)的組織形式,可分為順序存取文件(wnjin)和隨機存取文件(wnjin)。(3)根據(jù)文件(wnjin)的存儲形式,可分為ASCII碼文件(wnjin)和二進制文件(wnjin)。第1頁/共39頁第二頁,共39頁。(wnjin)中傳送數(shù)據(jù)的操作。第2頁/共39頁第三頁,共39頁。對文件操作的基本單位(dnwi)也是記錄。第3頁/共39頁第四頁,共39頁。注意:結構類型名“FILE”必須大寫。第4頁/共39頁第五頁,共39頁。將一批數(shù)據(jù)讀入到緩沖區(qū)中,再從緩沖區(qū)中將數(shù)據(jù)逐個送到程序
2、數(shù)據(jù)區(qū)。第5頁/共39頁第六頁,共39頁。第6頁/共39頁第七頁,共39頁。stdio.h中。后續(xù)函數(shù)不再贅述。第7頁/共39頁第八頁,共39頁。表表8-1:文件使用文件使用(shyng)方式含方式含 義義 “r” (只讀只讀)為輸入打開一個文本文件為輸入打開一個文本文件“w” (只寫只寫)為輸出打開一個文本文件為輸出打開一個文本文件“a” (追加追加)向文本文件尾增加數(shù)據(jù)向文本文件尾增加數(shù)據(jù)“rb” (只讀只讀)為輸入打開一個二進制文件為輸入打開一個二進制文件“wb” (只寫只寫)為輸出打開一個二進制文件為輸出打開一個二進制文件ab“ (追加追加)向二進制文件尾增加數(shù)據(jù)向二進制文件尾增加數(shù)據(jù)
3、r+“ (讀寫讀寫)為讀為讀/寫打開一個文本文件寫打開一個文本文件w+” (讀寫讀寫)為讀為讀/寫建立一個新的文本文件寫建立一個新的文本文件a+” (讀寫讀寫)為讀為讀/寫打開一個文本文件寫打開一個文本文件rb+“ (讀寫讀寫)為讀為讀/寫打開一個二進制文件寫打開一個二進制文件“wb+“ (讀寫讀寫)為讀為讀/寫建立一個新的二進制文件寫建立一個新的二進制文件“ab+” (讀寫讀寫)為讀為讀/寫打開一個二進制文件寫打開一個二進制文件第8頁/共39頁第九頁,共39頁。 第9頁/共39頁第十頁,共39頁。第10頁/共39頁第十一頁,共39頁。第11頁/共39頁第十二頁,共39頁。3)標準錯誤文件st
4、derr:指向(zh xin)終端標準錯誤輸出(一般為顯示器)。第12頁/共39頁第十三頁,共39頁。第13頁/共39頁第十四頁,共39頁。第14頁/共39頁第十五頁,共39頁。第15頁/共39頁第十六頁,共39頁。第16頁/共39頁第十七頁,共39頁。第17頁/共39頁第十八頁,共39頁。 printf(“n Usage: 可執(zhí)行文件名 源文件名); exit(1); 第18頁/共39頁第十九頁,共39頁。第19頁/共39頁第二十頁,共39頁。第20頁/共39頁第二十一頁,共39頁。第21頁/共39頁第二十二頁,共39頁。第22頁/共39頁第二十三頁,共39頁。環(huán)繼續(xù)。第23頁/共39頁第二
5、十四頁,共39頁。第24頁/共39頁第二十五頁,共39頁。第25頁/共39頁第二十六頁,共39頁。第26頁/共39頁第二十七頁,共39頁。第27頁/共39頁第二十八頁,共39頁。第28頁/共39頁第二十九頁,共39頁。第29頁/共39頁第三十頁,共39頁。第30頁/共39頁第三十一頁,共39頁。第31頁/共39頁第三十二頁,共39頁。第32頁/共39頁第三十三頁,共39頁。第33頁/共39頁第三十四頁,共39頁。第34頁/共39頁第三十五頁,共39頁。第35頁/共39頁第三十六頁,共39頁。第36頁/共39頁第三十七頁,共39頁。非標準文件操作非標準文件操作(cozu) (cozu) 非標準文
6、件的打開、關閉非標準文件的打開、關閉打開文件函數(shù)打開文件函數(shù)open 非標準文件系統(tǒng)使用文件號來標識文件,而不使用非標準文件系統(tǒng)使用文件號來標識文件,而不使用FILE型文件指針,使用非標準文件以前應打開,文件打開也是型文件指針,使用非標準文件以前應打開,文件打開也是通過調用函數(shù)通過調用函數(shù)fopen來實現(xiàn)的。來實現(xiàn)的。函數(shù)原型函數(shù)原型(yunxng):int open(char *filename,int mode);函數(shù)功能:按函數(shù)功能:按mode指定的方式打開名為指定的方式打開名為filename的文的文件,打開成功,函數(shù)返回一個正整數(shù)稱為文件好,否則返件,打開成功,函數(shù)返回一個正整數(shù)稱為
7、文件好,否則返回回-1關閉函數(shù)關閉函數(shù)close 函數(shù)原型函數(shù)原型(yunxng):int close(int fd);函數(shù)功能:用于關閉文件。其中,函數(shù)功能:用于關閉文件。其中,fd為文件號,是指打為文件號,是指打開時的方式。若關閉文件成功返回開時的方式。若關閉文件成功返回0,否則返回,否則返回-1 第37頁/共39頁第三十八頁,共39頁。非標準文件的讀與寫操作非標準文件的讀與寫操作讀取數(shù)據(jù)函數(shù)讀取數(shù)據(jù)函數(shù)read函數(shù)原型:函數(shù)原型:int read(int fd,void *buf,unsigned size);函數(shù)功能:從函數(shù)功能:從fd所代表的文件名讀入所代表的文件名讀入size個字節(jié)
8、到起始地址為個字節(jié)到起始地址為buf的緩沖區(qū)中。的緩沖區(qū)中。Fd是指定文件的文件號,是指定文件的文件號,buf為存放為存放(cnfng)讀入數(shù)據(jù)讀入數(shù)據(jù)的存儲空間的首地址,的存儲空間的首地址,size是從文件讀入的字節(jié)數(shù),函數(shù)的返回值為是從文件讀入的字節(jié)數(shù),函數(shù)的返回值為實際讀入的字節(jié)數(shù),無讀入數(shù)據(jù),則操作失敗,返回值為實際讀入的字節(jié)數(shù),無讀入數(shù)據(jù),則操作失敗,返回值為-1。寫數(shù)據(jù)函數(shù)寫數(shù)據(jù)函數(shù)write函數(shù)原型:函數(shù)原型:int write(int fd,void *buf,unsigned size);函數(shù)功能:將內(nèi)存中起始地址為函數(shù)功能:將內(nèi)存中起始地址為buf的存儲區(qū)中的的存儲區(qū)中的size個字節(jié)寫到個字節(jié)寫到fd所代表的文件中去。函數(shù)返回實際寫入磁盤的字節(jié)數(shù),若操作失敗,所代表的文件中去。函數(shù)返回實際寫入磁盤的字節(jié)數(shù),若操作失敗,返回值為返回值為-1 第38頁/共39頁第三十九頁,共39頁。