Linux系統呼叫IO

2021-08-31 11:41:34 字數 815 閱讀 5968

讀檔案

ssize_t read(int fd,void* buf,size_t count)

引數一: int ----- open的返回值

引數二: void * ---- 用來存放讀取資料的記憶體的首位址

引數三:size_t 讀取內容大小,單位:位元組

返回值:

成功:>0 讀取的位元組數

=0 檔案末尾

失敗:-1

寫檔案ssize_t write(int fd, const void *buf, size_t count)

引數一:open的返回值

引數二: 要寫入資料的記憶體的首位址

引數三: 寫入內容大小,單位:位元組

返回值:

成功:>0 寫入的位元組數

=0 檔案末尾

失敗:-1

關閉檔案

close(int fildes)

引數:open返回值,檔案描述符

返回值成功:0

失敗:-1

練習:使用系統呼叫io實現檔案的拷貝

int main()

else

writefd = open("./newfile.c", o_rdonly | o_creat);//建立新檔案

if(readfd == -1)

else

int size = 0;

char buf[20] =

while(size = read(readfd, buf, 15) )//讀到檔案末尾結束迴圈

return 0;

}

Linux下檔案I O系統呼叫

庫是可重用的模組 處於使用者態 系統呼叫是os提供的服務 處於核心態 不能直接呼叫 而要使用類似int 0x80的軟中斷陷入核心 所以庫函式中有很大部分是對系統呼叫的封裝。從巨集觀上說,系統呼叫時核心層,c標準庫在應用層。檔案描述符是linux核心為了高效管理已被開啟的檔案而建立的索引,其值為乙個非...

linux高階程式設計 系統呼叫I O函式

檔案描述符 檔案描述符是非負整數。開啟現存盤案或新建檔案時,系統 核心 會返回乙個檔案描述符。檔案描述符用來指定已開啟的檔案。在系統呼叫 檔案io 中,檔案描述符對檔案起到標識作用,如果要操作檔案,就是對檔案描述符的操作 乙個程式執行或者乙個程序開啟時,系統會自動建立三個檔案描述符 0 標準輸入 1...

系統呼叫IO介面

int open const char pathname,int flags,mode t mode 功能 開啟檔案 pathname 指定要開啟的檔名稱 flages 選項引數 必選引數 o rdonly 讀 o wrnoly 寫 o rdwr 只能選一 讀寫 可選引數 o creat 若檔案存在...