檔案控制代碼 檔案描述符

2021-10-06 01:24:19 字數 686 閱讀 9655

由於程序級檔案描述符表的存在,不同的程序中會出現相同的檔案描述符,它們可能指向同乙個檔案,也可能指向不同的檔案。

兩個不同的檔案描述符,若指向同乙個開啟檔案控制代碼(file*),將共享同一檔案偏移量。因此,如果通過其中乙個檔案描述符來修改檔案偏移量,那麼從另乙個檔案描述符中也會觀察到變化,無論這兩個檔案描述符是否屬於不同程序,還是同乙個程序,情況都是如此。

在linux系統中檔案控制代碼(file handles)和檔案描述符(file descriptor)是乙個一一對應的關係

#include

#include

#include

#include

#include

#include

intmain()

; file *myfile;

myfile =

fopen

("test"

,"w+");

if(!myfile)

printf

("the openfile's descriptor is %d\n"

, myfile->_fileno);if

(write

(myfile->_fileno,buf,50)

<0)

else

exit(0

);}

檔案控制代碼 檔案描述符

檔案控制代碼和檔案描述符 在我們跨平台開發的時候,經常會碰到這倆個概念 檔案描述符 本質上是乙個索引號 非負整數 系統使用者層可以根據它找到系統核心層的檔案資料。這是乙個posix標準下的概念,常見於linux系統。但windows也有檔案描述符這個概念,但不常用。檔案控制代碼 windows下的概...

Linux 檔案控制代碼 檔案描述符

這裡我們先區分好兩個概念 檔案描述符和檔案控制代碼 簡單來說,每個程序都有乙個開啟的檔案表 fdtable 表中的每一項是struct file型別,包含了開啟檔案的一些屬性比如偏移量,讀寫訪問模式等,這是真正意義上的檔案控制代碼。檔案描述符是乙個整數。代表fdtable中的索引位置 下標 指向具體...

控制代碼和檔案描述符

控制代碼是windows下的概念。控制代碼是windows下各種物件的識別符號,比如檔案 也許叫文件比較合適一點 資源 選單 游標 點陣圖等。檔案控制代碼和檔案描述符類似,它也是乙個非負整數,也用於定位檔案資料在記憶體中的位置。由於linux下所有東西都被看成是檔案,比如檔案 也許叫文件比較合適一點...