c語言中return與exit的區別淺析_C 語言

來源:互聯網
上載者:User

1. exit 用於在程式啟動並執行過程中隨時結束程式,exit 的參數是返回給OS的。main函數結束時也會隱式地調用exit函數。exit函數運行時首先會執行由atexit()函數登記的函數,然後會做一些自身的清理工作,同時重新整理所有輸出資料流、關閉所有開啟的流並且關閉通過標準I/O函數tmpfile()建立的臨時檔案。exit是結束一個進程,它將刪除進程使用的記憶體空間,同時把錯誤資訊返回父進程,而return是返回函數值並退出函數.

2. return是語言層級的,它表示了呼叫堆疊的返回;而exit是系統調用層級的,它表示了一個進程的結束。

3.exit函數是退出應用程式,並將應用程式的一個狀態返回給OS,這個狀態標識了應用程式的一些運行資訊。和機器和作業系統有關一般是 0 為正常退出 非0 為非正常退出

    函數原型  void exit(int status);  ( 標頭檔 stdlib.h )

4. return是返回函數調用,如果返回的是main函數,則為退出程式
exit是在調用處強行退出程式,運行一次程式就結束

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.