c語言中exit和return的區別點總結
1、返回函數值的return是關鍵字,exit是一個函數。
return是語言級的,它表示調用堆棧的返回;exit是系統調用級的,它表示一個過程的結束。
2、return是函數的退出,exit是進程的退出。
3、return由C語言提供,exit由操作系統提供(或函數庫提供)。
實例
#include /* ISO C */ void exit(int status); void _Exit(int status); #include /* POSIX */ void _exit(int status);
知識點擴充:
C語言中return與exit的區別
1,exit用於在程序運行的過程中隨時結束程序,exit的參數是返回給OS的。main函數結束時也會隱式地調用exit函數。exit函數運行時首先會執行由atexit()函數登記的函數,然後會做一些自身的清理工作,同時刷新所有輸出流、關閉所有打開的流並且關閉通過標準I/O函數tmpfile()創建的臨時文件。exit是結束一個進程,它將刪除進程使用的內存空間,同時把錯誤信息返回父進程,而return是返回函數值並退出函數
2,return是語言級別的,它表示瞭調用堆棧的返回;而exit是系統調用級別的,它表示瞭一個進程的結束。
3,exit函數是退出應用程序,並將應用程序的一個狀態返回給OS,這個狀態標識瞭應用程序的一些運行信息。
4,和機器和操作系統有關一般是 0 為正常退出 非0 為非正常退出
5,void exit(int status);
6,atexit()函數的參數是一個函數指針,函數指針指向一個沒有參數也沒有返回值的函數。atexit()的函數原型是:int atexit (void (*)(void));在一個程序中最多可以用atexit()註冊32個處理函數,這些處理函數的調用順序與其註冊的順序相反,也即最先註冊的最後
到此這篇關於c語言中exit和return的區別點總結的文章就介紹到這瞭,更多相關c語言中exit和return的不同點內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- C語言return, exit, abort的區別
- 如何在PHP中操作臨時文件
- Java中system.exit(0) 和 system.exit(1)區別
- php超詳細講解命名管道
- c語言中static修飾函數的方法及代碼