结束进程

在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()函数区别:

  1. exit()和_eixt()函数功能和用法是一样的,就是所包含的头文件不一样。
  2. exit()属于标准库函数,_exit()属于系统调用函数。

 

exit()函数和_exit()函数的区别

当一个进程终止了,我们需要知道进程退出时的状态,我们需要通过进程结束时的退出码来识别。

进程正常结束时:

  1. 从main()函数返回
  2. 调用exit()函数/调用_exit()函数(系统调用)

我们可以用(echo$?)查看上一次进程执行结束的退出码。

案例:

exit()函数和_exit()函数的区别

执行结果:

exit()函数和_exit()函数的区别

此外,exit()函数,会刷新I/O缓冲区

exit()函数和_exit()函数的区别

执行结果:

exit()函数和_exit()函数的区别

若调用_exit()

exit()函数和_exit()函数的区别

调用_exit()函数,执行结果如下:

exit()函数和_exit()函数的区别

 

相关文章: