2015-10-13 21 views

回答

1

exit(3) man page

C标准规定两个常数,EXIT_SUCCESSEXIT_FAILURE,其可以被传递到退出()来指示成功或不成功 终止,分别。

它在您提到的group_exit页面上提及。我认为这是一个错字,它相当于exit(2),因为在标准库中没有退出(2),只有退出(3)。我已经通过阅读stdlib6源代码证实了这一点。

由于group_exit(2)被认为相当于exit,这意味着status有两个定义的值,其余的(最多255个)取决于您的定义。该规则仍然成立,但除EXIT_SUCCESS之外的任何内容均表示程序失败。

1

状态是程序的退出状态。例如:

$ ls a.txt 
ls: cannot access a.txt: No such file or directory 
$ echo $? 
2 
$ 

在上面的输出中,ls的退出状态是2.同样,您应指定状态。这取决于你实施的逻辑。 如果退出状态设置为0,则表明程序正常退出。否则它会异常退出。