91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

詳解C語言中return與exit的區別

發布時間:2020-09-26 19:26:07 來源:腳本之家 閱讀:135 作者:freeboy1015 欄目:編程語言

詳解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個處理函數,這些處理函數的調用順序與其注冊的順序相反,也即最先注冊的最后

調用,最后注冊的最先調用。

一般程序執行到 main() 的結束就完成了, 如果想在程序結束時做一些事情, 可以嘗試著用這個函數.

example:


#include... 

#include...

 
void f1(void)
{
  printf("exit f1\n");
}

void f2(void)
{
  printf("exit f2\n");
}

int main()
{
  atexit(f1);
  atexit(f2);


  printf("exit main\n");


  return 0;
}



如有疑問請留言或者到本站社區交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

莆田市| 汕尾市| 托里县| 壶关县| 莱阳市| 榆树市| 万年县| 长乐市| 塘沽区| 盈江县| 平顶山市| 宿松县| 卓尼县| 巴南区| 博野县| 昌宁县| 教育| 醴陵市| 舟曲县| 浙江省| 肇庆市| 航空| 德州市| 利川市| 武宣县| 云浮市| 施秉县| 梁平县| 南澳县| 金湖县| 宁晋县| 宽城| 礼泉县| 揭阳市| 南部县| 宣恩县| 石林| 广东省| 靖宇县| 大理市| 临澧县|