讀函式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 中。以下幾種...