欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

exit(0)和exit(1)

程序员文章站 2022-07-13 23:35:34
...

 

 

exit(0)和exit(1)

   exit好象在"stdlib.h"头文件里面,所以要有包含头文件   return是返回函数调用,如果返回的是main函数,则为退出程序  

   exit是在调用处强行退出程序,运行一次程序就结束

   exit(1)表示异常退出.这个1是返回给操作系统的   exit(0)表示正常退出  

数字0,1,-1会被写入环境变量ERRORLEVEL,其它程序可以由此判断程序结束状态。   一般0为正常推出,其它数字为异常,其对应的错误可以自己指定。 

     返回给操作系统的,0是正常退出,其他值是异常退出,在退出前可以给出一些提示信息,或在调试程序中察看出错原因.

#include "iostream.h"
#include "stdlib.h"
void fun()
{
int *p;
if(p=new int) //如果给P分派到空间,继续执行(很流氓的写法)
{
   *p=5;
   cout<<*p<<endl;
   delete p;
}
else
{
   cout<<"heap error"<<endl;
}
}
void main()
{
fun();
int *pa;
pa=new int[5];
if(!pa)//如果没分配到空间,调用exit(1)退出程序
{
   cout<<"heap error"<<endl;
   exit(1);
}
for(int i=0;i<5;i++)
   pa[i]=i+1;
for(i=0;i<5;i++)
   cout<<pa[i]<<" ";
cout<<endl;
delete []pa;
}

 

 

 

exit()是用来正常结束进程的.exit(0)是正常退出,return是返回某个值.

exit(0)程序结束时返回0给系统 exit(1)程序结束时返回1给系统 exit(n)程序结束时返回n给系统
这样系统就知道程序是怎么结束的~是出错结束的呢 还是正常结束的呢,一看返回值就知道了.

 

exit()函数无论你括号里用数字几效果都是相同的
但是你可以用不同的数字来区别退出的原因 比方 如果内存分配失败而exit(1) 打开文件失败而exit(2) 或者用来标示在此处退出,发生错误的严重性

exit是结束整个程序     exit();     exit(0);     exit(1);     exit(A);//A表示要返回的某个值         exit(0)正常退出     只要传给它非0   ,就表示程序非正常退出,   这个值会传给操作系统.