进程的终止

系统调用 exit()实现进程的终止。exit()在 Linux 系统函数库 stdlib.h 中的函数声明如下:

 

void exit(int status);

 

exit()只有一个参数 status,称作进程的退出状态,父进程可以使用它的低 8 位。exit()的返回值通常用于指出进程所完成任务的成败。如果成功,则返回 0;如果出错,则返回非 0 值。

exit()除了停止进程的运行外,它还有一些其它作用,其中最重要的是,它将关闭所有已打开的文件。如果父进程因执行了 wait()调用而处于睡眠状态,那么子进程执行 exit()会重新启动父进程运行。另外,exit()还将完成一些系统内部的清除工作,例如缓冲区的清除工作等。

除了使用 exit()来终止进程外,当进程运行完其程序到达 main()函数末时,进程会自动终止。当进程在 main()函数内执行一个 return 语句时,它也会终止。

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
        exit(100);
        return 0;
}