它讓我困惑了很長時間,有沒有一種好的方法來設計C中的錯誤代碼作爲返回代碼。我曾經使用幻數或全局宏來定義一個特定的錯誤,如使用-1作爲一般失敗。但是當項目變大時,我發現管理這些錯誤代碼並不容易。有人能給我一個例子或指導如何設計好的錯誤代碼?是否有一些指南用於設計C代碼中的錯誤代碼?
我曾經認爲錯誤代碼可能會被拆分成一些位域來指定錯誤的類型或引發錯誤或其他的函數。我正在尋找靈感,並且沒有針對錯誤代碼的特定項目。也許在一些着名的項目中有一些好的編碼錯誤代碼,請告訴我該項目的名稱
我會很感激。
它讓我困惑了很長時間,有沒有一種好的方法來設計C中的錯誤代碼作爲返回代碼。我曾經使用幻數或全局宏來定義一個特定的錯誤,如使用-1作爲一般失敗。但是當項目變大時,我發現管理這些錯誤代碼並不容易。有人能給我一個例子或指導如何設計好的錯誤代碼?是否有一些指南用於設計C代碼中的錯誤代碼?
我曾經認爲錯誤代碼可能會被拆分成一些位域來指定錯誤的類型或引發錯誤或其他的函數。我正在尋找靈感,並且沒有針對錯誤代碼的特定項目。也許在一些着名的項目中有一些好的編碼錯誤代碼,請告訴我該項目的名稱
我會很感激。
您可能會喜歡使用enum
數據類型。例如:
typedef enum { KEY_NOT_FOUND, INVALID_DATA } errortype;
strerror提供用戶定義的錯誤codes.This實施strerror
提供了一種用於用戶定義的可擴展性。 errno.h
定義爲__ELASTERROR
,它可以用作用戶定義的錯誤值的基礎。
你說得對。我認爲我的問題可能改爲「如何編碼錯誤代碼」。例如:使用int變量的前8位作爲錯誤類型,其他位指示具體錯誤。 – Arthur