linux函式程式碼操練---錯誤處理
阿新 • • 發佈:2019-01-24
基礎知識
strerror函式
char* strerror(int errnum);
perror函式
void perror(const char* s);
將錯誤程式碼對映為字串
錯誤程式碼取值
錯誤程式碼的取值和含義都列在error.h中
EPERM 操作不允許
ENOENT 檔案或者目錄不存在
EINTR 系統呼叫中斷
EIO I/O錯誤
EBUSY 裝置或者資源忙
EEXIST 檔案存在
EINVAL 無效引數
EMFILE 開啟的檔案過多
ENODEV 裝置不存在
EISDIR 是一個目錄
ENOTDIR 不是一個目錄
strerror函式翻譯成程式設計師可以理解的錯誤資訊。
程式截圖
執行結果
說明
這裡模擬了一下講一個錯誤程式碼翻譯成錯誤資訊,成功返回指向該錯誤資訊的指標,否則返回NULL。在實際應用過程中,通常要自己捕獲錯誤程式碼。
#
程式截圖
執行結果
說明
程式打印出指定函式的錯誤資訊。注意errno量與哪一個函式有關,一般在函式執行完畢後馬上檢查