当前位置: 技术问答>linux和unix
新手的问题关于exit?
来源: 互联网 发布时间:2014-12-01
本文导语: 1. int main(...) int main(...) { { return 0; 和 exit(0); 有区别吗? } } 2. int main(...) int main(...) { ...
1.
int main(...) int main(...)
{ {
return 0; 和 exit(0); 有区别吗?
} }
2.
int main(...) int main(...)
{ {
if(fork()==0) if(fork()==0)
{ {
exit(0); 和 return 0;//(可以吗?) 有区别吗?
. .
. .
. .
int main(...) int main(...)
{ {
return 0; 和 exit(0); 有区别吗?
} }
2.
int main(...) int main(...)
{ {
if(fork()==0) if(fork()==0)
{ {
exit(0); 和 return 0;//(可以吗?) 有区别吗?
. .
. .
. .
|
用exit()函数可以在退出程序并将控制权返回给操作系统,而用return语句可以从一个函数中返回并将控制权返回给调用该函数的函数。如果在main()函数中调用return语句,那么在执行这条语句后将退出main()函数并将控制权返回给操作系统,所以这样一条return语句和exit()语句作用是一样的。
|
1.没有什么区别
2.用exit(0)那么你fork的进程也结束了
用return 那么你fork的进程还在运行
2.用exit(0)那么你fork的进程也结束了
用return 那么你fork的进程还在运行
|
1,up
2,return 0你的子进程处于僵死状态,并没有退出
2,return 0你的子进程处于僵死状态,并没有退出
|
no,it's children process over
|
exit才是父进程结束。
|
1。return 与 exit 是不同的。
return 会把值返回,这时系统发现程序已完成,便退出;
而exit却不是,它是在这个点断掉,并且告诉系统我已退出,系统会得到
退出状态。
2。可以这样,区别如1所示。
return 会把值返回,这时系统发现程序已完成,便退出;
而exit却不是,它是在这个点断掉,并且告诉系统我已退出,系统会得到
退出状态。
2。可以这样,区别如1所示。