exit()函數記錄——exit(0),exit(1) 和 exit(-1)的區別

1、exit的功能爲:退出當前運行的程序,並將參數value返回給主調進程。

 

2、exit(0),exit(1) 和 exit(-1)的區別

  • exit(0)表示程序正常退出;除了0之外,其他參數均代表程序異常退出,如:exit(1),exit(-1)。
  • exit(1)和exit(-1)是分別返回1和-1到主調程序。
  • exit(0)則是返回0。exit(0)表示程序正常退出,非0表示非正常退出。

 

3、return與exit的區別

  •  return是語言級別的,它表示了調用堆棧的返回;
  • 而exit是系統調用級別的,它表示了一個進程的結束。

return和exit作用大致相同。

在main中:

return v;  與   exit(v);  的效果相同。

但是在其它功能函數中就會有所區別:

return會跳出函數,而exit會結束程序。

 即: return是返回函數調用,如果返回的是main函數,則爲退出程序  ;

         exit是在調用處強行退出程序,運行一次該程序就被強制結束 。

 

4、通常可以藉助exit()的返回值判斷程序結束狀態,

0表示程序正常退出,

其它值是異常退出,

在退出前可以給出一些提示信息,方便在調試程序時察看出錯原因。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章