關於fopen函式

2021-10-03 15:57:07 字數 1607 閱讀 8775

在c語言中,操作檔案之前必須先開啟檔案;

標頭檔案中的 fopen() 函式即可開啟檔案,它的用法為:

file *fopen(char *filename, char *mode);

file 是 標頭檔案中的乙個結構體,它專門用來儲存檔案資訊。

filename為檔名(或者檔案路徑),mode為開啟方式,它們都是字串。

file *fp;if(

(fp=

fopen

("data.txt"

,"rb")==

null

)

開啟檔案出錯時,fopen() 將返回乙個空指標,也就是 null,我們可以利用這一點來判斷檔案是否開啟成功

開啟方式說明r

以「唯讀」方式開啟檔案。只允許讀取,不允許寫入。檔案必須存在,否則開啟失敗。

w以「寫入」方式開啟檔案。如果檔案不存在,那麼建立乙個新檔案;如果檔案存在,那麼清空檔案內容,再建立乙個新檔案。

a以「追加」方式開啟檔案。如果檔案不存在,那麼建立乙個新檔案;如果檔案存在,那麼將寫入的資料追加到檔案的末尾。

r+以「讀寫」方式開啟檔案。既可以讀取也可以寫入,也就是隨意更新檔案。檔案必須存在,否則開啟失敗。

w+以「寫入/更新」方式開啟檔案,相當於w和r+疊加的效果。既可以讀取也可以寫入,也就是隨意更新檔案。如果檔案不存在,那麼建立乙個新檔案;如果檔案存在,那麼清空檔案內容, 再建立乙個新檔案。

a+以「追加/更新」方式開啟檔案,相當於a和r+疊加的效果。既可以讀取也可以寫入,也就是隨意更新檔案。如果檔案不存在,那麼建立乙個新檔案;如果檔案存在,那麼將寫入的資料追加到檔案的末尾。

-----

以上六種為讀寫許可權字串(必須宣告);下面兩種為讀寫方式字串(預設為「t」),

b二進位制檔案。

t文字檔案,如果不寫,預設為"t"。

讀寫許可權和讀寫方式組合使用的兩種正確方式:

將讀寫方式放在讀寫許可權的末尾,例如:「rb」

將讀寫方式放在讀寫許可權的中間,例如:「rb+」

檔案一旦使用完畢,應該用 fclose() 函式把檔案關閉,以釋放相關資源,避免資料丟失。

fclose(fp);

檔案正常關閉時,fclose() 的返回值為0,如果返回非零值則表示有錯誤發生。

#include

#include

intmain()

while

((ch=

fgetc

(fp))!=

eof)

else

if(ch==

'@')

}printf

("%d"

,count)

;fclose

(fp)

;//關閉檔案的正確方式

return0;

}

fopen:標頭檔案中開啟檔案的函式。

file: 標頭檔案中的乙個結構體,它專門用來儲存檔案資訊。

fclose:標頭檔案中關閉先前fopen()開啟的檔案的函式,此動作會讓緩衝區內的資料寫入檔案中, 並釋放系統所提供的檔案資源。

c語言fopen函式

c語言函式fopen 函式簡介 1.函式功能 開啟乙個檔案 2.函式原型 file fopen const char path,const char mode 3.相關函式 open,fclose,fopen s 1 wfopen 所需庫 4.返回值 檔案順利開啟後,指向該流的檔案指標就會被返回。如...

C語言函式fopen

函式功能 開啟乙個檔案 函式原型 file fopen const char path,const char mode open,fclose,fopen s 引 wfopen 所需庫 stdio.h 返回值 檔案順利開啟後,指向該流的檔案指標就會被返回。如果檔案開啟失敗則返回null,並把錯誤 存...

fopen()函式的使用

定義函式 file fopen const char path,const char mode 函式說明 引數path字串包含欲開啟的檔案路徑及檔名,引數mode字串則代表著流形態。mode有下列幾種形態字串 r 開啟唯讀檔案,該檔案必須存在。r 開啟可讀寫的檔案,該檔案必須存在。rb 讀寫開啟乙個...