那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何使用exit()、_exit()和_Exit()來終止程序運行呢?

jf_Vqngj70R ? 來源:美男子玩編程 ? 2024-02-22 12:20 ? 次閱讀

Linux系統下,你可以使用 exit()、_exit() 和 _Exit() 來終止程序運行,特別是在出現錯誤或執行失敗的情況下。這樣可以確保程序在發生嚴重錯誤時能夠安全地退出。

1

exit() 函數

用法:void exit(int status)。

exit() 函數是標準 C 庫的一部分,常用于 C 和 C++ 程序中。

當調用時,它執行一系列的清理操作(如調用使用 atexit() 注冊的函數),刷新 I/O 緩沖區,然后終止程序。

status 參數是一個整數值,返回給調用進程的父進程。

通常,零狀態表示正常終止,而非零狀態可能表示錯誤或異常終止。

以下例子中,exit(0) 將立即終止程序,不會執行 printf("After exit() "); 后的代碼。exit(0) 表示正常終止。

#include
#include


int main() {
    printf("Before exit()
");


    // The exit() function performs cleanup actions and terminates the program.
    exit(0);


    // The following code will not be executed.
    printf("After exit()
");


    return 0;
}

2

_exit() 函數

用法: void _exit(int status)。

_exit() 函數是一個系統調用,立即終止調用的進程,而不執行 exit() 所做的清理操作。

它不刷新 I/O 緩沖區,也不關閉打開的文件描述符,并且不調用使用 atexit() 注冊的函數。

status 參數被返回給父進程。

與 exit() 不同,_exit(0) 不會執行任何清理動作,而是立即終止程序。與 exit() 不同,_exit() 函數是一個系統調用,不執行標準庫的清理操作。

#include
#include


int main() {
    printf("Before _exit()
");


    // The _exit() function immediately terminates the program without cleanup.
    _exit(0);


    // The following code will not be executed.
    printf("After _exit()
");


    return 0;
}

3

_Exit() 函數

用法: void _Exit(int status)。

與 _exit() 類似,_Exit() 是一個系統調用,它在不執行清理操作的情況下立即終止調用的進程。

_Exit() 的行為類似于 _exit(),但其設計與 exit() 具有相同的函數簽名。

它在 POSIX 兼容系統中得到標準化。

_Exit(0) 與 _exit(0) 類似,都是立即終止程序。在 POSIX 系統中,_Exit() 是標準化的版本。

#include
#include


int main() {
    printf("Before _Exit()
");


    // The _Exit() function immediately terminates the program without cleanup.
    _Exit(0);


    // The following code will not be executed.
    printf("After _Exit()
");


    return 0;
}

總的來說,exit() 是一個更高級別的函數,在終止之前執行各種清理操作,而 _exit() 和 _Exit() 是低級別的函數,立即終止進程而不執行清理操作。_Exit() 是 POSIX 兼容系統中對 _exit() 的標準化版本。




審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux系統
    +關注

    關注

    4

    文章

    595

    瀏覽量

    27510

原文標題:exit()、_exit()和_Exit()終止程序運行

文章出處:【微信號:美男子玩編程,微信公眾號:美男子玩編程】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Linux的exit命令用途說明

    exit命令用于退出當前shell,在shell腳本中可以終止當前腳本執行
    發表于 07-17 07:07

    linux的exit()與_exit()有什么區別

    void exit(int staus) 函數, 在頭文件 #include void _exit(int status) 函數,在頭文件 #include 中
    發表于 07-23 07:36

    STM32筆記之 EXIT(外部中斷)精選資料分享

    /O映像三、中斷服務四、配置流程(代碼解析)五、中斷函數處理在上一篇STM32筆記之 GPIO引腳中,有用到 EXIT外部中斷作為 Key輸入觸發,所以本篇...
    發表于 08-05 06:10

    STM32F0中外部中斷EXIT

    推薦分享一個大神的人工智能教程。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到人工智能的隊伍中!Ⅰ、概述EXIT外部中斷在使用到按鍵或者開關控制等應用中比較常見,低功耗中斷喚醒也是很常見
    發表于 08-13 07:58

    定時器外部中斷(EXIT)概念

    文章目錄定時器中斷外部中斷(EXIT)概念與介紹使用的介紹使能IO時鐘&基本配置中斷優先級(NVIC)中斷服務函數編寫中斷處理的回調函數HAL_GPIO_EXTI_Callback相關概念
    發表于 08-16 07:01

    EXIT外部中斷按鍵的誤觸發問題

    EXIT外部中斷 按鍵的誤觸發問題最近在調試按鍵作為外部中斷exti進行觸發動作,發現每次...
    發表于 08-16 06:46

    STM32之EXIT外部中斷的功能有哪些

    EXIT控制的原理是什么?EXIT外部中斷的功能有哪些?
    發表于 10-27 07:45

    如何對EXIT的外部中斷進行配置

    EXIT外部中斷是什么?EXIT外部中斷有哪些功能?如何對EXIT的外部中斷進行配置
    發表于 11-16 06:21

    基于EXIT圖和自適應微粒群算法的度分布對優化方法

    綜合EXIT 圖法和自適應微粒群優化(APSO)算法的優點,該文提出了一種基于EXIT 圖和APSO 算法的非正則LDPC 碼度分布對優化方法。該方法設計了衡量EXIT 曲線匹配程度的全局代價函數,并
    發表于 11-10 15:30 ?11次下載

    STM32F0xx_ EXIT中斷配置詳細過程

    STM32F0xx_EXIT中斷配置詳細過程
    的頭像 發表于 04-07 14:37 ?3388次閱讀
    STM32F0xx_ <b class='flag-5'>EXIT</b>中斷配置詳細過程

    STM32_ EXIT中斷

    STM32_EXIT中斷
    的頭像 發表于 04-08 11:12 ?3890次閱讀
    STM32_ <b class='flag-5'>EXIT</b>中斷

    Shell內建命令:exit命令

    1.簡介 exit 命令是 Shell 內建命令,用于退出當前 Shell 進程。 2.命令格式 exit ?N (1)狀態碼 N 的范圍是 0-255,一般情況下,0 表示正常退出,非零表示異常
    的頭像 發表于 02-02 10:45 ?4054次閱讀

    51單片機匯編學習例程(2)——Exit中斷篇

    2.ASM2_Exit: 外部中斷控制LED亮滅
    發表于 11-22 14:36 ?31次下載
    51單片機匯編學習例程(2)——<b class='flag-5'>Exit</b>中斷篇

    瑞薩e2studio(6)----EXIT

    瑞薩e2studio.6--EXIT概述硬件準備外部中斷接口新建工程工程模板保存工程路徑芯片配置工程模板選擇LED燈配置EXIT配置EXIT屬性配置工程文件R_ICU_ExternalIrqOpen
    發表于 12-20 19:02 ?6次下載
    瑞薩e2studio(6)----<b class='flag-5'>EXIT</b>

    瑞薩e2studio(9)----EXIT

    本篇文章主要介紹如何使用e2studio對瑞薩單片機進行EXIT檢測,之后通過按鍵形式以及燈的亮滅形式進行演示。
    的頭像 發表于 11-15 10:53 ?1142次閱讀
    瑞薩e2studio(9)----<b class='flag-5'>EXIT</b>
    台北县| 百家乐官网平台有什么优势| 百家乐官网闲单开多少| 广州百家乐娱乐场开户注册| 真博娱乐| 百家乐扫瞄光纤洗牌机扑克洗牌机扑克洗牌机 | 玩百家乐新2娱乐城| 百家乐官网园百利宫娱乐城信誉好...| 顶尖百家乐的玩法技巧和规则| 玩百家乐官网技巧看路| 澳门百家乐必胜看路| 百家乐官网赌场高手| 三门峡市| 大发888客服电话多少| 百家乐注册就送| 百家乐官网赌场走势图| 投注平台网| 实战百家乐十大取胜原因百分百战胜百家乐不买币不吹牛只你能做到按我说的.百家乐基本规则 | 百家乐官网投注心得| 青鹏棋牌官网下载| 百家乐一年诈骗多少钱| 百家乐庄闲筹码| 爱婴百家乐官网的玩法技巧和规则 | 登封市| 百家乐官网千术道具| 黑水县| 德州扑克的玩法| 新葡京娱乐城怎么样| 大发888是怎么吃钱不| 新加坡百家乐的玩法技巧和规则 | 康平县| 海王星娱乐网| 在线博弈游戏| 网上百家乐官网公式| 威尼斯人娱乐场申博太阳城| 百家乐视频麻将下载| 在线百家乐官网下| 百家乐官网娱乐真钱游戏| 百家乐官网网站源码| 赌博娱乐场| 噢门百家乐官网玩的技巧|