结束进程
在C语言中,我们用continue,break,return结束循环或退出函数
continue:结束本次循环
break:跳出整个循环,或跳出switch()语句
return:结束当前函数
在Linux中,我们通过exit()或_exit()来结束当前进程
exit()函数
所需头文件:
#include<stdlib.h>
void exit(int status);
功能:结束调用此函数的进程
参数:
status:返回给父进程的参数(低8位有效),至于这个参数多少是根据需要来填写
返回值:无
_exit()函数
头文件:#include<unistd.h>
void _exit(int status);
功能:结束调用此函数的进程
参数:
status: 返回给父进程的参数(低8位有效),至于这个参数多少是根据需要来填写
返回值:无
exit()和_eixt()函数区别:
- exit()和_eixt()函数功能和用法是一样的,就是所包含的头文件不一样。
- exit()属于标准库函数,_exit()属于系统调用函数。
当一个进程终止了,我们需要知道进程退出时的状态,我们需要通过进程结束时的退出码来识别。
进程正常结束时:
- 从main()函数返回
- 调用exit()函数/调用_exit()函数(系统调用)
我们可以用(echo$?)查看上一次进程执行结束的退出码。
案例:
执行结果:
此外,exit()函数,会刷新I/O缓冲区
执行结果:
若调用_exit()
调用_exit()函数,执行结果如下: