当程序在执行某个函数时出现错误,如果该错误会导致后续步骤无法正常进行,应该在错误发生时立即终止程序的执行,而不是让程序继续运行下去。
在 Linux 系统下,进程正常退出除了可以使用return之外,还可以使用exit_exit以及_Exit
exit
该函数是一个标准C库函数函数会执行一些清理工作,最后调用_exit()函数终止进程。
1.头文件
#include <stdlib.h>
2.函数原型
void exit(int status);
3.参数
status:表示程序退出的返回值。
4.返回值
无。
5.
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
int main()
{
FILE *fp = fopen("exit", "r");
if (!fp) {
perror("exit test");
printf("errno1= %d\n", errno);
exit(errno);
}
fclose(fp);
printf("errno2= %d\n", errno);
exit(errno);
}
6.编译运行并查看测试结果
exit test: No such file or directory
errno1= 2
_exit_Exit
这两个函数都是系统调用,函数会在不执行exit()的清理操作的情况下立即终止调用的进程,它不刷新I/O缓冲区,也不关闭打开的文件描述符
1.头文件
#include <unistd.h>#include <stdlib.h>
2.函数原型
void _exit(int status); void _Exit(int status);
3.参数
status:表示程序退出的返回值。
4.返回值
无。
5.示例
exit相同,仅换成_exit_Exit。

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Powered by Discuz! X3.5  © 2001-2013 Comsenz Inc.