creat函式
表頭檔案:#include
#include
#include
定義函式: int creat(const char *pathname,mode_tmode);
函式說明:
引數pathname指向欲建立的檔案路徑字串,
creat()
相當於使用下列的呼叫方式呼叫
open(); open(const char *pathname,(o_creat|o_wronly|o_trunc));
open函式
表頭檔案:#include
#include
#include
定義函式:int open( const char * pathname, int flags);
int open( const char * pathname,int flags, mode_t mode);
read函式
表頭檔案: #include
定義函式:ssize_t read(int fd,void * buf ,size_t count);
函式說明: read(
)會把引數fd所指的檔案傳送count個位元組到buf指標所指的記憶體中。若引數count為0,則read(
)不會有作用並返回0。返回值為實際讀取到的位元組數,如果返回0,表示已到達檔案尾或是無可讀取的資料,此外檔案讀寫位置會隨讀取到的位元組移動
write函式
表頭檔案: #include
定義函式: ssize_t write (int fd,const void * buf,size_t count);
函式說明: write(
)會把引數buf所指的記憶體寫入count個位元組到引數fd所指的檔案內。當然,檔案讀寫位置也會隨之移動
lseek函式
表頭檔案: #include
#include
定義函式: off_t lseek(int fildes,off_t offset ,int whence);
) 或write(
)時,讀寫位置會隨之增加,lseek(
)便是用來控制該檔案的讀寫位置的。引數fildes為已開啟的檔案描述詞;引數offset為根據引數whence來移動讀寫位置的位移數,引數whence為下列其中一種。
lseek_set:引數offset即為新的讀寫位置。
lseek_cur:以目前的讀寫位置往後增加offset個位移量。
lseek_end:將讀寫位置指向檔案尾後再增加offset個位移量。
當whence值為seek_cur或seek_end時,引數offet允許負值的出現。下列是較特別的使用方式:
l欲將讀寫位置移到檔案開頭時,lseek(int fildes,0,seek_set)。
l欲將讀寫位置移到檔案尾時,lseek(int fildes,0,seek_end)。
l想要取得目前檔案位置時,lseek(int fildes,0,seek_cur)
close函式
表頭檔案:#include
定義函式:int close(int fd)
函式說明:close(
)用來關閉open(
)開啟的檔案
無緩衝訪問檔案
creat函式 表頭檔案 include include include 定義函式 int creat const char pathname,mode tmode 函式說明 引數pathname指向欲建立的檔案路徑字串,creat 相當於使用下列的呼叫方式呼叫 open open const ch...
緩衝 與 無緩衝
先看下面的程式 在上面的程式中printf函式列印的字串最後沒有帶換行符,而且最後呼叫了 exit 函式,這導致了最後沒有列印出 hello world 下面先介紹幾種緩衝機制 1 全緩衝 全緩衝指的是系統在填滿標準io緩衝區之後才進行實際的io操作 注意,對於駐留在磁碟上的檔案來說通常是由標準io...
標準I O緩衝 全緩衝 行緩衝 無緩衝
說明 我只對網路資源進行了整合,方便學習 基於流的操作最終會呼叫read或者write函式進行i o操作。為了使程式的執行效率最高,流物件通常會提供緩衝區,以減少呼叫系統i o庫函式的次數。基於流的i o提供以下3種緩衝 全緩衝 直到緩衝區被填滿,才呼叫系統i o函式。對於讀操作來說,直到讀入的內容...