1:exit(OVERFLOW)
①exit简介
为C++的退出函数,声明于stdlib.h中,对于C++其标准的头文件为cstdlib,声明为
void exit(int value);
- exit(0):运行正常退出程序
- exit(1):运行异常退出退出程序,返回值1是返回给操作系统的
- exit(x)(x不为0):都表示异常退出
exit的功能为,退出当前运行的程序,并将参数value返回给主调进程。
OVERFLOW为math.h中的一个宏定义,其值为3。含义为运算过程中出现了上溢,即运算结果超出了运算变量所能存储的范围。
所以,exit(OVERFLOW)的含义就是,退出程序,并返回OVERFLOW的值给主调进程。其标准的使用范围为,当程序运算出现上溢时,退出程序并报错给主调进程。
②exit与return区别
1:return 是关键字;exit() 是函数。
2:return 是语言级别的,表示调用堆栈的返回;而 exit() 是系统调用级别的,表示进程的结束。
return 是退出(返回)函数,将控制权移交给递归的前一级;exit() 是直接退出进程。
(exit()退出程序,把控制权交给OS
return结束当前函数,返回函数值,把控制权交给调用函数)
3:return是函数的退出,exit是进程的退出。
4:在最初调用的main函数中调用return和exit的现象很模糊,但return会自动调用对象的析构函数, 而exit不会.非主函数中调用return和exit效果很明显。
2:return
①定义
return;//在返回类型为void中使用,实际上返回类型为void的函数不要求非得有return语句,因为在这一类型的最后一句会隐式地执行return语句。当然,如果在void函数中想提前退出,可使用return 语句
return expression;
②作用
类似于break语句,退出到上一层
准确来说,是 终止当前正在执行的函数,并将控制权返回到调用函数的地方
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)