当需要结束一个进程的时候,可以使用exit()函数或_exit()函数来终止该进程。当程序运行到exit()函数或_exit()函数时,进程会无条件停止剩下的所有操作,并进行清理工作,最终将进程停止。
头文件:#include<stdlib.h>
函数原型:void exit(int status)
函数参数:status 表示让进程结束时的状态,默认使用0表示正常结束
返回值:无
头文件:#include<unistd.h>
函数原型:void _exit(int status)
函数参数:status 同exit()函数
返回值:无
_exit()函数的作用最为简单:直接使进程终止运行,清除其使用的内存空间,并销毁其在内核中的各种数据结构;
exit()函数在调用exit系统调用之前要检查文件的打开情况,把文件缓冲区中的内容写回文件,就是图中的"清理I/O缓冲"一项。
示例代码:
/*************************************************************************
@Author: wanghao
@Created Time : Thu 17 May 2018 08:54:07 PMPDT
@File Name: exit.c
@Description:
************************************************************************/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main(int argc, const char *argv[])
{
printf("one!");
//exit(0);//print one!
_exit(0);//print nothing
printf("two!\n");
return0;
}