使用C操作檔案的兩種方式及其區別

2021-06-27 15:03:52 字數 701 閱讀 3251

以linux為例,用c**操作檔案一般有兩種方法,一種是使用posix的函式操作檔案(使用fd控制代碼,稱為控制代碼法),另外則是使用libc提供的函式(使用file,稱為指標法)。

控制代碼法的例程如下:

int main(void)

close(fd);

}

第二種指標法的例程如下:

int main(void)

fclose(fr);

}

兩者的區別在於:

(1)控制代碼法沒有buffer,所有的讀寫操作都是直接操作io,因為io速度慢,所以導致整體讀取效率不高;而指標法預設提供了buffer,讀取檔案讀取使用快取後,可以減少io操縱次數,提高io效率,從而提高了效能。使用者可以使用void setbuf ( file * stream, char * buffer )來改變buffer大小,或者將buffer設為null從而禁止buffer。

(2)採用指標法,c提供了大量要求file的函式,如從檔案中讀一行資料等。

btw,對於file的指標法,一般讀寫文字檔案使用fgetc/fputc/fgets/fputs/fscanf/fprintf,對於二進位制檔案則使用fread/fwrite

VB中檔案操作的兩種方式

vb中檔案操作的兩種方式 文字檔案的操作 此種方式是以行為單位進行讀取的基本單位,主要應用的方法和函式有open,close,line input,freefile,eof等。下面先簡述其功能然後結合 示例進行說明。open 顧名思義,它的作用是開啟檔案,換而言之開啟某個檔案就是獲得某個的控制權,一...

VB中檔案操作的兩種方式

vb中檔案操作的兩種方式 此種方式是以行為單位進行讀取的基本單位,主要應用的方法和函式有open,close,line input,freefile,eof等。下面先簡述其功能然後結合 示例進行說明。open 顧名思義,它的作用是開啟檔案,換而言之開啟某個檔案就是獲得某個的控制權,一般情況下當檔案處...

檔案修改的兩種方式

whw.txt檔案中有一下內容 張三 13333333333 小李 15555555555 王二麻 12222222222 編寫程式實現檔案內容的修改 方法一 佔硬碟的修改方式 需要新建乙個檔案 import osf name whw.txt f new name s.new f name old ...