我在学习C.
如果我:
void fun(){
exit(0);
}
void main(){
/*instructions*/
fun();
/*other-instructions*/
}
Run Code Online (Sandbox Code Playgroud)
当调用函数"fun"时,我退出(0).一旦退出(0)执行,它会关闭所有内容吗?或其他指令执行?exit(0)和exit(-1)之间的区别是什么?我是否必须#include一些东西来使用退出功能?
谢谢你的帮助!
通常情况下,exit(n)退出程序,不运行任何更多的您的代码,使程序"状态代码"等于(在shell看到的错误号)n(虽然高序位可能被忽略).
更确切地说,exit()将为C库做一些清理工作.特别是它将调用您已使用注册的关闭函数atexit (有关更多详细信息,请参阅文档).最后,它调用_exit()系统调用,将控制转移到内核并告诉内核停止调用进程.内核将释放进程内存,关闭文件和套接字等.
| 归档时间: |
|
| 查看次数: |
8283 次 |
| 最近记录: |