蒟蒻的學習記錄第三週

2021-10-11 19:16:34 字數 1935 閱讀 2897

————c語言檔案操作

內容多參考自c語言詳解 file檔案操作

文字檔案是以字元編碼的方式進行儲存的。二進位制檔案將記憶體中資料原封不至檔案中,適用於非字元為主的資料。如果以記事本開啟,只會看到一堆亂碼。

其實,除了文字檔案外,所有的資料都可以算是二進位制檔案。二進位制檔案的優點在於訪問速度快,占用空間小,以及可隨機訪問資料。

2.檔案訪問方式:

包括順序訪問方式和隨機訪問方式兩種。

隨機訪問方式多半以二進位制檔案為主。它會以乙個完整的單位來進行資料的讀取和寫入,通常以結構為單位。

3.文字檔案操作

c語言中主要通過標準i/o函式來對文字檔案進行處理。相關的操作包括開啟、讀寫、關閉與設定緩衝區。

相關的訪問函式有:fopen(), fclose(), fgetc(), fputc(), fgets(), fputs(), fprintf(), fscanf()等。

二.檔案操作函式

2.1 開啟檔案:fopen()

函式原型為:_crtimp file * __cdecl fopen(const char *, const char *);

第一引數為檔名,第二個引數為開啟模式。

開啟成功,fopen返回乙個結構指標位址,否則返回乙個null。如:

2.2 關閉檔案:fclose()函式原型為:_crtimp int __cdecl fclose(file *);

關閉成功返回值0,否則返回非零值。如:

注:在執行完檔案的操作後,要進行「關閉檔案」操作。雖然程式在結束前會自動關閉所有的開啟檔案,但檔案開啟過多會導致系統執行緩慢,這時就要自行手動關閉不再使用的檔案,來提高系統整體的執行效率。

2.3 字元訪問函式:fgetc()

函式原型為:

_crtimp int __cdecl fputc(int, file *);

_crtimp int __cdecl fgetc(file *);

字元讀取函式fgetc()可從檔案資料流中一次讀取乙個字元,然後讀取游標移動到下乙個字元,並逐步將檔案的內容讀出。

如果字元讀取成功,則返回所讀取的字元,否則返回eof(end of file)。eof是表示資料結尾的常量,真值為-1。另外,要判斷檔案是否讀取完畢,可利用**feof()**進行檢查。未完返回0,已完返回非零值。

feof()函式原型為:_crtimp int __cdecl feof(file *);

如:1.用eof判斷檔案是否結束:

#include

intmain()

else

printf

("fail to open!\n");

fclose

(fp)

;return0;

}

2.用feof()判斷檔案結束:

#include

intmain()

else

printf

("fail to open!\n");

fclose

(fp)

;return0;

}

**若要將字元逐一寫入檔案,用fputc()函式。

第三週討論記錄

討論的主題是使我們的軟體變得有實用價值。所有成員一致認為我們的軟體沒法跟市面上已有聊天交友軟體競爭,於是我們決定轉變目標物件,做一款專門針對學校的軟體。經過討論,我們發現了現存軟體在學校裡的不便之處 每個學生用著不同的聊天軟體,學校在組織 通知學生時總會有些不方便 不及時。針對這一點,我們確定了軟體...

蒟蒻的做題記錄

感覺我做的題真的是少得可憐。比日切十題的 4 7 大佬少多了。人也不知道比 4 7 大佬菜到 去了。智商正在緩慢恢復中持續下降。thuwc 2017 隨機二分圖 zjoi2018 歷史 xsy2300 好題 jxoi2018 守衛 jxoi2018 遊戲 loj6053 簡單的函式 loj6235 ...

第三週任務學習記錄

上週教學任務是 構建之法 第三四章的學習 軟體工程師的成長,兩人合作。軟體工程討論的是 量巨大,涉及人數眾多,專案需求多變時所要解決的問題。通過不斷地學習,正在努力的學習並且解決這一問題。接下來主要任務是 點。任務學習 點遊戲是乙個數字小遊戲,其遊戲規則是 n個同學 n通常大於10 每人寫乙個0 1...