C語言中的Read和Write函式

2021-06-21 03:34:28 字數 610 閱讀 3266

讀函式read 

ssize_t read(

intfd,

void

*buf,size_t nbyte) 

read函式是負責從fd中讀取內容.

成功時,read返回實際所讀的位元組數,如果返回的值是0,表示已經讀到檔案的結束了.

小於0表示出現了錯誤.

如果錯誤為eintr說明讀是由中斷引起的, 

如果是econnrest表示網路連線出了問題.

寫函式write 

ssize_t write(

intfd,

const

void

*buf,size_t nbytes) 

write函式將buf中的nbytes位元組內容寫入檔案描述符fd.成功時返回寫的位元組數.失敗時返回-1. 並設定errno變數. 在網路程式中,當我們向套接字檔案描述符寫時有倆種可能.  

1)write的返回值大於0,表示寫了部分或者是全部的資料.  

2)返回的值小於0,此時出現了錯誤.我們要根據錯誤型別來處理.  如果錯誤為eintr表示在寫的時候出現了中斷錯誤.  

如果為epipe表示網路連線出現了問題(對方已經關閉了連線).

來自:

C語言read和write函式解析

在研究乙份aes加密 的時候,發現 從command line獲取資料僅僅使用了read函式,很是疑問。從command line獲取資料不是要使用scanf函式嗎?所以,詳細了解了c庫的read函式特性。順帶了write函式,他們是couple一對兒 主要參考文章 感謝原博主 使用read wri...

read 函式和 write 函式

read 函式和 write 函式 最近開始從事搜尋引擎的工作,所以又重新開始了c c 的旅程,時隔4年 不得不複習一下c c 其中的內容,以下內容有網上別的朋友發表的,也有我自己總結的.1.read include ssize t read int filedes,void buf,size t ...

read 函式和 write 函式

1.read include unistd.h ssize t read int filedes,void buf,size t nbytes 返回值 讀取到的位元組數 0 讀到 eof 1 出錯 read 函式從 filedes 指定的已開啟檔案中讀取 nbytes 位元組到 buf 中。以下幾種...