c - exit(21) 代表什么?可以用 exit(1) 代替吗?
问题描述
代表什么exit(21)
?可以用 exit(1) 代替吗?我试图理解退出代码,但我根本找不到这个问题的答案。
我附上了示例代码。
for(i=1;i<argc;i++)
{
r= fork();
if(r==0)
{
display(i);
exit(21);
}
解决方案
程序的退出代码用于确定程序是成功还是失败,如果失败则说明原因。通过将值传递给exit
函数或从main
函数返回值来指定程序的退出代码。
按照惯例,退出值 0 表示成功,而大于 0 的值表示失败。至于特定退出值的含义,由所讨论的程序定义并且(除了 0 表示成功)对于每个程序都是不同的。
您需要更多地查看使用退出值 21 的代码,以了解该代码的含义。
在您提供的代码示例中,代码调用exit(21)
whenfork
返回 0。该fork
函数创建一个子进程并返回两次:一次返回父进程的 pid,一次返回值为 0 的子进程。所以在这种特殊情况下,退出值 21 是子进程返回的值。但同样,这是针对这个程序的。其他程序可以自由地将此值用于其他情况。
推荐阅读
- amazon-web-services - EC2 Instance Connect - 哪些 AWS IPs 用于浏览器控制台访问的入站?
- pyspark - 读取 .xlsx 文件时出现 PySpark 错误:“无法将 JSON 字符串转换为字段。”
- excel - 如何优化代码,使 vba 不会崩溃?
- mysql - 将谷歌数据融合管道连接到 mysql 数据库时出现问题
- grails - 从excel文件导入后出现多个GORM ValidationException
- testing - 我们如何使测试依赖于 testcafe studio 中的另一个测试
- flutter - Flutter中如何判断生肖
- javascript - 使用 jQuery 在单独的文件中从模板加载 HTML 元素
- regex - 删除包含特定文本的行...例如删除所有包含“创建者...”的行
- augmented-reality - 使用 HoloLens 向 3D 模型(预制件)提供反馈