[英]Error handling with "err" in C: What codes should I use?
err
和errx
的手册页说明了以下语法:
void err(int eval, const char *fmt, ...);
void errx(int eval, const char *fmt, ...);
显然const char *fmt
是格式字符串,并且...
包含它的参数(就像printf
一样)。 我知道eval
是您分配给错误的代码。 由于手册页没有详细说明eval
参数,我想知道:
是否有规则/约定,指定应为特定错误分配哪些错误代码,或者编写代码的程序员可以选择编写他们认为必要的任何eval
值?
从我的 Ubuntu (GNU/Linux) 系统的手册页中:
err()
、verr()
、errx()
和verrx()
函数不返回,而是以参数eval
的值退出。
所以这是一个你会传递给exit
的值。
如果你想要便携,C 定义了EXIT_SUCCESS
和EXIT_FAILURE
。
也就是说,返回 0 到 127 之间的数字应该没有问题,其中 0 表示成功。 这些数字的含义取决于您,但通常会增加严重性。 例如,如果找到匹配项,则grep
返回 0,如果未找到匹配项,则返回 1,如果发生错误则返回 2。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.