Có thể bạn có thể áp dụng một số quy ước của Unix.
Trong another answer, người dùng David đề nghị
sysexits.h
có một danh sách các mã lối ra tiêu chuẩn. Có vẻ như ngày trở lại ít nhất năm 1993 và một số dự án lớn như Postfix sử dụng nó, vì vậy tôi tưởng tượng đó là con đường để đi.
Từ trang người đàn ông OpenBSD:
Theo phong cách (9), nó không phải là thực hành tốt để gọi exit (3) với giá trị trary arbi- để chỉ một tình trạng thất bại khi kết thúc một chương trình. Thay vào đó, các mã thoát được xác định trước từ sysexits nên được sử dụng, vì vậy người gọi của quá trình có thể nhận được một ước tính sơ bộ về lớp lỗi mà không tra cứu mã nguồn.
Đây là danh sách như nó xuất hiện trên một hệ thống Debian:
#define EX_USAGE 64 /* command line usage error */
#define EX_DATAERR 65 /* data format error */
#define EX_NOINPUT 66 /* cannot open input */
#define EX_NOUSER 67 /* addressee unknown */
#define EX_NOHOST 68 /* host name unknown */
#define EX_UNAVAILABLE 69 /* service unavailable */
#define EX_SOFTWARE 70 /* internal software error */
#define EX_OSERR 71 /* system error (e.g., can't fork) */
#define EX_OSFILE 72 /* critical OS file missing */
#define EX_CANTCREAT 73 /* can't create (user) output file */
#define EX_IOERR 74 /* input/output error */
#define EX_TEMPFAIL 75 /* temp failure; user is invited to retry */
#define EX_PROTOCOL 76 /* remote error in protocol */
#define EX_NOPERM 77 /* permission denied */
#define EX_CONFIG 78 /* configuration error */
Bên trong tập tin /usr/include/sysexits.h
người ta có thể tìm thấy mô tả chi tiết hơn về các mã lỗi.
Liên kết của bạn bị hỏng và không nằm trong bộ nhớ cache của Google. (Ngoài ra, một bài đăng trên diễn đàn HP dường như không phải là một tài liệu tham khảo đặc biệt có thẩm quyền ở nơi đầu tiên.) –