3.4 函式creat
也可呼叫create函式建立乙個新檔案。
#include
int creat(const char *path, mode_t mode);
返回值:若成功,返回為只寫開啟的檔案描述符;若出錯,返回-1
注意,此函式等效於:
open(path, o_wronly | o_creat | o_trunc, mode);
在4.5節中,我們將詳細說明檔案訪問許可權,並說明如何指定mode。
create的乙個不足之處是它以只寫方式開啟所建立的檔案。在提供open的新版本之前,如果要建立乙個臨時檔案,並要先寫該檔案,然後又讀該檔案,則必須先呼叫create、close,然後再呼叫open。現在則可用下列方式呼叫open實現:
open(path, o_rdwr | o_creat | o_trunc, mode);
第3章 檔案I O
引言unix系統中的大多數檔案i o 只需要用到5個函式 open read write lseek以及close 檔案描述符 用於描述檔案開啟或者建立之後返回的乙個非負整數,可以理解為檔案的id 特殊用途的標號 0 標準輸入 1 標準輸出 2 標準錯誤 早期系統一般乙個程序最多開啟16個檔案,現在...
第3章 檔案I O
3.2 檔案描述符 對於核心而言,所有開啟的檔案都通過檔案描述符引用。檔案描述符時乙個非負整數。當開啟乙個現有檔案或建立乙個新檔案時,核心向程序返回乙個檔案描述符。當讀 寫乙個檔案時,使用open或creat返回的檔案描述符標識該檔案,將其作為引數傳送給read或write。按照慣例,unix系統s...
第3章 檔案I O
3.3 函式open和openat 呼叫open或openat函式可以開啟或建立乙個檔案。iinclude int open const char path,int oflag,mode t mode int openat int fd,const char path,int oflag,mode ...