请问return与exit的区别?谢谢

来源:百度知道 编辑:UC知道 时间:2024/06/26 04:05:10

return与exit的区别是什么?

exit()是一个函数
,结束一个进程,它将删除进程使用的内存空间,同时把错误信息返回父进程,在父进程中wait系统调用将接受到此返回信息。

return返回函数值,是关键字

在main函数中我们通常使用return (0);这样的方式返回一个值。

但这是限定在非void情况下的也就是void main()这样的形式。

exit()通常是用在子程序中用来终结程序用的,使用后程序自动结束跳会操作系统。

但在如果把exit用在main内的时候无论main是否定义成void返回的值都是有效的,并且exit不需要考虑类型,exit(1)等价于return (1)

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

return只是用在函数体内,返回return后面那数的值给调用函数继续执行,
而exit是一个系统函数是直接可以结束整个程序的啊,他后面的参数是有固定含义的0,1之类的都是定义好的函数参数

我查了jdk文档:System.exit(int status)是中止当前虚拟机的运行,也就是强制性的推出程序。
那个参数是状态码,0表示正常退出程序,其他值表示异常退出。

return 是函数中返回某个变量的关键字。

return 是在函数调用是返回一个值 或直接返回 然后结束函数调用
exit是直接结束主程序 exit(0)是正常结束 exit(1)是异常结束

return主要是归还的意思,动词
exit主要是只出口,应急出口,多用名词