C语言中return和exit(0),exit(1)何种区别?


1、exit(1)表示异常退出,在退出前可以给出一些提示信息,或在调试程序中察看出错原因。

2、exit(0)表示正常退出。 

3、 return是语言级别的,是关键字,它表示了调用堆栈的返回,return用于结束一个函数的执行,将函数的执行信息传出个其他调用函数使用,如果返回的是main函数,则为退出程序。

而exit是系统调用级别的,是一个函数,它表示了一个进程的结束。 exit是在调用处强行退出程序,运行一次程序就结束。这个状态标识了应用程序的一些运行信息,这个信息和机器和操作系统有关。


return 表示把程序流程从被调函数转向主调函数并把表达式的值带回主调函数,实现函数值的返回,返回时可附带一个返回值,由return后面的参数指定。

return通常是必要的,因为函数调用的时候计算结果通常是通过返回值带出的。 如果函数执行不需要返回计算结果,也经常需要返回一个状态码来表示函数执行的顺利与否(-1和0就是最常用的状态码),主调函数可以通过返回值判断被调函数的执行情况。

发布了2 篇原创文章 · 获赞 2 · 访问量 46

猜你喜欢

转载自blog.csdn.net/yuechifanfan/article/details/105306605