Linux C 之檔案程式設計(2)
阿新 • • 發佈:2018-12-12
read & write
#read
從與檔案描述符 fd 相關的檔案中讀取 n bytes 個位元組的資料到 buf 中,返回實際讀入的位元組數;
##write
將字串 buf 中前 n bytes 個位元組的資料寫入與檔案描述符 fd 關聯的檔案中,返回實際寫入的位元組數。
標頭檔案: #include <unistd.h> 函式原型: size_t read(int fd, void *buf, size_t nbytes); size_t write(int fd, const void *buf, size_t nbytes); 引數說明: fd:檔案描述符,標識要讀取的檔案。如果為0,則從標準輸入讀資料。 buf:緩衝區,用來儲存讀入的資料。 nbytes:要讀取的字元數。 size_t:返回值,返回成功讀取的字元數,它可能會小於請求的位元組數。-1表示出現錯誤。 fd:檔案描述符,目標檔案。例如:fd的值為1,就向標準輸出寫資料, buf:待寫入的字串。 nbytes:要寫入的字元數。
lseek
lseek對檔案描述符fd指定檔案的讀寫指標進行設定,也就是說,它可以設定檔案的下一個讀寫位置。
標頭檔案: #include <unistd.h> #include <sys/types.h> 函式原型: off_t lseek(int filedes, off_t offset, int whence); 引數說明: off_set:引數用來指定位置 whence:引數定義該偏移值的用法。 * whence可以取下列值 ** SEEK_SET:offset是一個絕對位置 ** SEEK_CUR:offset是相對於當前位置的一個相對位置 ** SEEK_END:offset是相對於檔案尾的一個相對位置 off_t:lseek返回從檔案到檔案指標被設定處的位元組偏移,失敗時返回-1.引數offset的型別off_t是一個與具體實現有關的整數型別,它定義在sys/types.h中