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 ,就表示程序非正常退出, 这个值会传给操作系统.