與標準c庫中的fopen函式
file *fp;
fp = fopen("filename", "arg");
不同,linux中用於開啟和建立檔案的open 函式如下:
#include<fcntl.h>
int open(const char *pathname, int oflag, ... /* mode_t mode */);
返回值:成功則返回檔案描述符,否則返回 -1
其中,pathname 是待開啟/建立檔案的路徑名(如 c:/cpp/a.cpp);oflag 用於指定檔案的開啟/建立模式,這個引數可由以下常量(定義於 fcntl.h)通過邏輯或構成。
o_rdonly 唯讀模式
o_wronly 只寫模式
o_rdwr 讀寫模式
開啟/建立檔案時,至少得使用上述三個常量中的乙個。以下常量是選用的:
以下三個常量同樣是選用的,它們用於同步輸入輸出
o_dsync 等待物理 i/o 結束後再 write。在不影響讀取新寫入的資料的前提下,不等待檔案屬性更新。
o_rsync read 等待所有寫入同一區域的寫操作完成後再進行
o_sync 等待物理 i/o 結束後再 write,包括更新檔案屬性的 i/o
open 返回的檔案描述符一定是最小的未被使用的描述符。
對於 open 函式來說,第三個引數(...)僅當建立新檔案時才使用,用於指定檔案的訪問許可權位(access permission bits)。比如在向系統申請
共享記憶體時,使用的記憶體分配函式mmap時需要傳入乙個指向檔案指標mm_fd。這裡我們就是通過open函式來得到fd的值的。
mm_fd = open("./map.shm", o_rdwr | o_creat, 0666);
Linux中open函式詳解
open 開啟檔案 相關函式 read,write,fcntl,close,link,stat,umask,unlink,fopen 頭文件 include include include 定義函式 int open const char pathname,int flags int open co...
linux中open 函式的mode t 含義
開啟檔案 新建檔案和關閉檔案操作 開啟檔案操作使用系統呼叫函式open 該函式的作用是建立乙個檔案描述符,其他的函式可以通過檔案描述符對指定檔案進行讀取與寫入的操作。開啟檔案的一般形式是 open 檔案路徑,標誌 函式的返回值是檔案描述符,如果開啟檔案成功返回乙個正整數,否則返回 1。標誌是用於指定...
python中的open函式
這裡簡單記錄一下python中的with open 函式中的引數設定 python的open方法用來開啟乙個檔案。第乙個引數是檔案的位置和檔名,第二個引數是讀寫模式。這裡我們採用w模式,也就是寫模式。在這種模式下,檔案原有的內容將會被刪除。其中對於第二個引數 ru 或 ua 以讀方式開啟,同時提供通...