exit(0)与exit(1)

exit(0):正常运行程序并退出程序;

exit(1):非正常运行导致退出程序;

return():返回函数,若在主函数中,则会退出函数并返回一值。

详细说:

1. return返回函数值,是关键字;  exit 是一个函数。

2. return是语言级别的,它表示了调用堆栈的返回;而exit是系统调用级别的,它表示了一个进程的结束。
  3. return是函数的退出(返回);exit是进程的退出。

4. return是C语言提供的,exit是操作系统提供的(或者函数库中给出的)。

5. return用于结束一个函数的执行,将函数的执行信息传出个其他调用函数使用;exit函数是退出应用程序,删除进程使用的内存空间,并将应用程序的一个状态返回给OS,这个状态标识了应用程序的一些运行信息,这个信息和机器和操作系统有关,一般是 0 为正常退出, 非0 为非正常退出。

6. 非主函数中调用return和exit效果很明显,但是在main函数中调用return和exit的现象就很模糊,多数情况下现象都是一致的。

时间: 2024-10-01 07:07:32

exit(0)与exit(1)的相关文章

exit(0)和exit(1)

exit(0)和exit(1) exit好象在"stdlib.h"头文件里面,所以要有包含头文件   return是返回函数调用,如果返回的是main函数,则为退出程序 exit是在调用处强行退出程序,运行一次程序就结束 exit(1)表示异常退出.这个1是返回给操作系统的   exit(0)表示正常退出 数字0,1,-1会被写入环境变量ERRORLEVEL,其它程序可以由此判断程序结束状态.   一般0为正常推出,其它数字为异常,其对应的错误可以自己指定. 返回给操作系统的,0是正常

python中 os._exit() 和 sys.exit(), exit(0)和exit(1) 的用法和区别

os._exit() 和 sys.exit() os._exit() vs sys.exit() 概述 Python的程序有两中退出方式:os._exit(), sys.exit().本文介绍这两种方式的区别和选择. os._exit()会直接将python程序终止,之后的所有代码都不会继续执行. sys.exit()会引发一个异常:SystemExit,如果这个异常没有被捕获,那么python解释器将会退出.如果有捕获此异常的代码,那么这些代码还是会执行.捕获这个异常可以做一些额外的清理工作.

exit(0)和exit(1)区别

exit(0):正常退出程序: exit(1):非正常退出程序: return:返回. return是语言级别的,表示调用堆栈的返回: exit是系统调用级别的,表示一个进程的退出.

exit(0)与exit(1),return三者区别(详解)

exit(0):正常运行程序并退出程序: exit(1):非正常运行导致退出程序: return():返回函数,若在主函数中,则会退出函数并返回一值. 详细说: 1. return返回函数值,是关键字:  exit 是一个函数. 2. return是语言级别的,它表示了调用堆栈的返回:而exit是系统调用级别的,它表示了一个进程的结束.   3. return是函数的退出(返回):exit是进程的退出. 4. return是C语言提供的,exit是操作系统提供的(或者函数库中给出的). 5. r

王立平--android中让程序终止退出的解决办法 System.exit(0)

System.exit(0); System.exit(0)是将你的整个虚拟机里的内容都停掉了, 而finish()只是退出了activity,并没有退出应用,Application还是存在于内存中的,除非被系统回收. System.exit(0)是正常退出程序, System.exit(1)或者说非0表示非正常退出程序 System.exit(status)不管status为何值都会退出程序. 和return 相比有以下不同点:return是回到上一层,而System.exit(status)

android finish和system.exit(0)的区别

finish是Activity的类,仅仅针对Activity,当调用finish()时,只是将活动推向后台,并没有立即释放内存,活动的资源并没有被清理:当调用System.exit(0)时,杀死了整个进程, 这时候活动所占的资源也会被释放. 在开发android应用时,常常通过按返回键(即keyCode == KeyEvent.KEYCODE_BACK)就能关闭程序,其实大多情况下该应用还在任务里运行着,其实这不是我们想要的结果. 我们可以这样做,当用户点击自定义的退出按钮或返回键时(需要捕获动

android Process.killProcess 和 System.exit(0) 区别

1 Process.killProcess  和 System.exit(0) 两个都会 kill 掉当前进程. 你可以打开 DDMM 查看进程号,进程确实被 kill 掉了. 2 如果是在第一个 Activity 调用 Process.killProcess 或 System.exit(0) 都会 kill 掉当前进程. 但是如果不是在第一个 Activity 中调用,如 ActivityA 启动 ActivityB ,你在 ActivityB 中调用 Process.killProcess

System.exit(0);和finish();,push原理

今天师姐问我安卓后台的问题,想起几年前做进制转换的时候特意研究了一下怎么才能「不驻留内存地退出」.虽然Android不推荐用户手动关闭进程,但是在那个内存捉襟见肘的年代,不得不考虑内存. 首先直接按back键肯定是会驻留内存的,其次finish()也可以结束Activity,但是也驻留内存(我还清楚地记得当时做过实验,业界良心没有没).试了很多方法,最后找到一种方法可以退出: 在底层的Activity上添加back键监听,然后在onClick()里面用这个方法: System.exit(0);

android开发时,finish()跟System.exit(0)的区别

这两天在弄Android,遇到一个问题:所开发的小游戏中有背景音乐,玩的过程中始终有音乐在放着,然后在我退出游戏后,音乐还在播放! 我看了一下我最开始写的退出游戏的代码,就是简单的finish()语句.我想应该是这个地方出了问题.后来想了想,以前好像见过有用System.exit(0)退出游戏的,然后就尝试了一下,发现问题果然解决了. 现在来彻底弄清楚两者的区别. 首先一个Activity是有生命周期的,onCreate,onStart,onResume,onPause,onStop,onDes