linux嵌入式學習
發布時間: 2025-05-03 08:31:45
A. 嵌入式的學習筆記——Linux中的write/read函數
Linux中的write()和read()函數是嵌入式學習中的重要概念。write函數用於將內存中的數據寫入文件,其定義為將參數buf所指的count個位元組寫入指定文件。成功時返回實際寫入的位元組數,錯誤時返回-1,錯誤信息存儲在errno中。在示例1中,我們嘗試打開並創建文件,將buf的內容寫入,然後關閉文件。值得注意的是,write函數返回0通常意味著什麼都沒做,只有當count為0時才會發生這種情況。
read函數則從文件中讀取數據到內存,參數fd指定文件描述符,count指定讀取的位元組數。返回實際讀取的位元組數,0表示文件結束或無數據可讀。示例2中,雖然寫入了內容,但在讀取時返回值為0,因為讀取時游標位於文件末尾。為解決這個問題,我們需在讀取前重置游標位置。在修改後的代碼中,關閉文件後重新打開,游標自動回到文件頭,成功讀取並列印了32個位元組的內容。
熱點內容