exit()通常是用在子程序中用来终结程序用的,使用后程序自动结束,跳回操作系统。
在c语言中: exit(0):表示正常退出;exit(1):表示异常退出,这个1是返回给操作系统;值是返回操作系统的:0是正常退出,而其他值都是异常退出,所以我们在设计程序时,可以在推出前给一些小的提示信息,或者在调试程序的过程中查看出错原因。
使用exit()时,可以不论main()的返回值类型,它的头文件是 stdlib.h。
扩展资料:
进程函数:所在函数库为stdlib.h、process.h
void abort() 此函数通过调用具有出口代码3的_exit写一个终止信息于stderr,并异常终止程序 无返回值。
void _exit(int status)终止当前程序,但不清理现场。
void exit(int status) 终止当前程序,关闭所有文件,写缓冲区的输出(等待输出),并调用任何寄存器的"出口函数",无返回值。
参考资料:百度百科-C语言函数
一、exit() 解释:
1、用于结束当前进程,在整个程序中,只要调用 exit ,就结束return() 是当前函数返回,当然如果是在主函数main, 自然也就结束当前进程了,如果不是,那就是退回上一层调用。
2、exit(1)表示进程正常退出.,返回 1;
3、exit(0)表示进程非正常退出.,返回 0。
4、进程环境与进程控制:进程的开始与终止。
二、使用方法:
1、当程序发现错误情况使它无法继续执行下去时,这个函数尤其有用。你经常会在调用perrno之后再调用exit()终止程序。
注:这个函数没有返回值。当exit()函数结束时,程序已经消失,所以它无处返回。
2、当exit()函数被调用时,所有被atexit()函数注册为退出函数的函数将按照它们所注册的顺序被反序依次调用(参数由于被压入栈中,而先进后出)。
3、然后,所有用于流的缓冲区被刷新,所有打开的文件被关闭。用tmpfile()函数创建的文件被删除。然后,退出状态返回给宿主环境,程序停止执行。
扩展资料
一、exit()程序实例:
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
int main(int argc,char*argv[])
{
int status;
printf("Enter either 1 or 2\n");
status=getch();
/*Sets DOS error level*/
exit(status-'0');
/*Note:this line is never reached*/
return 0;
}
二、类似语句_exit()
1、_exit()函数类似于exit()函数,但是_exit()不会调用atexit()注册的退出函数,也不会调用之前传递给signal()函数的信号处理函数。
2、此外,_exit()函数不需要清洗输出缓冲区,关闭打开的流,以及删除临时文件,是否执行这些操作是由实现定义的。
参考资料:百度百科——exit()
但这是限定在非void情况下的也就是void main()这样的形式。
exit()通常是用在子程序中用来终结程序用的,使用后程序自动结束跳会操作系统。
但在如果把exit用在main内的时候无论main是否定义成void返回的值都是有效的,并且exit不需要考虑
#include <iostream>
#include <string>
using namespace std;
int main()
{
exit (1);//等价于return (1);
}
参考资料: http://www.pconline.com.cn/pcedu/empolder/gj/c/0503/566007.html
2006-03-19
其实你现在不用考虑这么多的~
遇到1 就代表出错后结束程序~其实不一定是1的~非0值也可以!
遇到0就表示正常退出~~
明白吗?
例如:
你定义一个文件的指针fp
if (fp=fopen ("c:\\abc.txt","r"))==NULL)
{
printf("Can not open the file.\n");
exit(1);
}
如果文件不存在那么就跳出程序了