进程退出场景
- 代码运行结束,结果正确
- 代码运行结束,结果不正确
- 代码异常终止
进程常见的退出方法
1、正常退出(可通过指令 : echo $? 查看进程退出码($?是bash中的特殊变量,表示上个命令对应的进程退出码))
- 从main函数返回(main函数为程序入口函数,其返回值为进程退出码,0表示结果正确,非0表示结果不正确)
- 调用exit(例如:exit(1) 任何函数中可用;本质上也是调用_exit,只是对其进行了包装)
- _exit
2、异常退出
- 指令 : ctrc + c 信号终止
下面分别介绍一下这几个退出方法
1、_exit
1、函数原型
#include <unistd.h>
void _exit(int status);
2、⚠️
- 参数 status 定义了进程的终止状态,父进程通过 wait 来取该值。
- 虽然 status 是 int ,但是仅仅有低8位可以被父进程所用。所以 _exit(-1) 时,在终端通过 echo $? 查看退出码时,发现返回值为255。
2、exit
1、函数原型
-
#include <unistd.h> void