exit和return的区别
2015-09-01 11:01
274 查看
主要有几下几个不同点:
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的现象就很模糊,多数情况下现象都是一致的。
在vfork中和fork中明显看到区别:大家可以尝试一下去敲一下程序,体会一下具体的区别。
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的现象就很模糊,多数情况下现象都是一致的。
在vfork中和fork中明显看到区别:大家可以尝试一下去敲一下程序,体会一下具体的区别。
相关文章推荐
- 矩阵转置 O(1)空间
- 嵌入式Linux工控主板调试串口转换为应用串口的方法
- Android判断横屏竖屏代码
- PAT (Advanced Level) Practise:1008. Elevator
- 325 zb的生日【dfs】
- vim使用说明
- 栈的基本操作
- HDU 2594(Simpsons’ Hidden Talents)字符串匹配-KMP
- HDU 2081 手机短号
- CVPR 2015 open access
- Ambari Metrics介绍
- 在Runbook中添加Checkpoint-workflow
- nginx 不带www到www域名的重定向
- 关于多线程三种语句的实现
- MarkdownPad2注册码
- Android XML动画资源文件详细讲解(上)
- Jenkins+Gradle实现android开发持续集成问题汇总
- nyoj 844 A+B Problem(V)【long long】
- 基于Cef的简易浏览器开发(CefSharp)
- C语言结构体(struct)常见使用方法