中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

建設(shè)部資質(zhì)上報系統(tǒng)網(wǎng)站/重慶百度推廣優(yōu)化

建設(shè)部資質(zhì)上報系統(tǒng)網(wǎng)站,重慶百度推廣優(yōu)化,無錫網(wǎng)站推,哪家做網(wǎng)站最便宜🕺作者: 主頁 我的專欄C語言從0到1探秘C數(shù)據(jù)結(jié)構(gòu)從0到1探秘Linux菜鳥刷題集 😘歡迎關(guān)注:👍點(diǎn)贊🙌收藏??留言 🏇碼字不易,你的👍點(diǎn)贊🙌收藏??關(guān)注對我真的…

??

🕺作者:?主頁

我的專欄
C語言從0到1
探秘C++
數(shù)據(jù)結(jié)構(gòu)從0到1
探秘Linux
菜鳥刷題集

😘歡迎關(guān)注:👍點(diǎn)贊🙌收藏??留言

🏇碼字不易,你的👍點(diǎn)贊🙌收藏??關(guān)注對我真的很重要,有問題可在評論區(qū)提出,感謝閱讀!!!

前言

前面我們講述了使用fork函數(shù)進(jìn)行進(jìn)程的創(chuàng)建,既然有創(chuàng)建就有終止,那么本篇將向大家講述進(jìn)程終止的相關(guān)知識~

進(jìn)程終止與操作系統(tǒng)

進(jìn)程終止時操作系統(tǒng)做了什么呢?當(dāng)然是要釋放進(jìn)程申請的相關(guān)內(nèi)核數(shù)據(jù)結(jié)構(gòu)和對應(yīng)的數(shù)據(jù)和代碼。本質(zhì)就是釋放系統(tǒng)資源。

進(jìn)程退出場景

進(jìn)程退出有三種場景如下:

  • 代碼運(yùn)行完畢,結(jié)果正確
  • 代碼運(yùn)行完畢,結(jié)果不正確
  • 代碼異常終止

這里我們要展開講一下。在我們使用c語言進(jìn)行編程的時候,我們會注意到main函數(shù)的返回值,總是return 0,為什么總是0呢?因?yàn)樗?strong>進(jìn)程的退出碼。那他一定得是0嗎?并不是的。他返回這個數(shù)字的意義在于返回給你上一級進(jìn)程,用來評判該進(jìn)程執(zhí)行結(jié)果用的。如果非零值就說明是,程序是有錯誤的,非零值有無數(shù)個,不同的非零值就可以標(biāo)識不同的錯誤原因,所以它的作用就是在我們的程序運(yùn)行結(jié)束之后,結(jié)果不正確,可以方便我們定位錯誤的原因細(xì)節(jié)。

舉個例子:

測試代碼:

#include <stdio.h>
#include <unistd.h>int main()
{int a[3]={0};printf("%d\n",a[1])//注意看,這里少了個 ;return 0;
}

?這里還要介紹一個指令,它可以查看上一個進(jìn)程運(yùn)行錯誤的原因。

echo $?

?返回2

是什么意思呢?別急!

我們先來查看一下這些“非零值”都代表著什么?

#include <stdio.h>
#include <string.h>
#include <unistd.h>
int main()
{for(int number = 0; number < 150; number++){printf("%d: %s\n", number, strerror(number));//將數(shù)字代表的錯誤原因展示出來} return 0;
}

查看結(jié)果:

進(jìn)程常見退出方法

正常終止(可以通過 echo $? 查看進(jìn)程退出碼):

  • 1. 從main返回
  • 2. 調(diào)用exit
  • 3. _exit

異常退出:

  • ctrl + c,信號終止

_exit函數(shù)

#include <unistd.h>
void _exit(int status);
參數(shù):status 定義了進(jìn)程的終止?fàn)顟B(tài),父進(jìn)程通過wait來獲取該值

?說明:雖然status是int,但是僅有低8位可以被父進(jìn)程所用。所以_exit(-1)時,在終端執(zhí)行$?發(fā)現(xiàn)返回值是255。

exit函數(shù)

#include <unistd.h>
void exit(int status);

?exit最后也會調(diào)用_exit, 但在調(diào)用_exit之前,還做了其他工作:

1. 執(zhí)行用戶通過 atexit或on_exit定義的清理函數(shù)。
2. 關(guān)閉所有打開的流,所有的緩存數(shù)據(jù)均被寫入
3. 調(diào)用_exit

?

?測試一下:

exit函數(shù)

#include<stdio.h>
#include <stdlib.h>
int main()
{printf("hello");exit(0);
}

運(yùn)行:

?

?_exit函數(shù)

#include<stdio.h>
#include <stdlib.h>
int main()
{printf("hello");_exit(0);
}

?運(yùn)行:

?因?yàn)槲覀冊O(shè)置的字符串后面沒有“\n”,也就是說它會待在緩沖區(qū)中,然后我們會發(fā)現(xiàn)_exit函數(shù)會直接結(jié)束,而exit函數(shù)則是先把緩存區(qū)內(nèi)的數(shù)據(jù)沖刷出來才結(jié)束,其實(shí)exit是庫函數(shù),而_exit是系統(tǒng)接口,exit函數(shù)最后會調(diào)用操作系統(tǒng)的_exit函數(shù)。

這里給大家留下一個問題,printf——\n數(shù)據(jù)保存在緩沖區(qū)中的,請問緩沖區(qū)在哪里?誰維護(hù)?但是我們知道它一定不在操作系統(tǒng)內(nèi)部,如果是操作系統(tǒng)維護(hù)的,緩沖區(qū)_exit就一定能夠刷出來!今天我只能告訴你是C語言標(biāo)準(zhǔn)庫給我們維護(hù)的。懂得的小伙伴可以在評論區(qū)打出一起交流~

return退出

return是一種更常見的退出進(jìn)程方法。執(zhí)行return n等同于執(zhí)行exit(n),因?yàn)檎{(diào)用main的運(yùn)行時函數(shù)會將main的返回值當(dāng)做 exit的參數(shù)。

后記

本篇我們主要講述了進(jìn)程的退出場景,進(jìn)程的終止,正常情況下它有三種退出的方式,異常情況可以使用ctrl+c的方式終止~

http://www.risenshineclean.com/news/60.html

相關(guān)文章:

  • 南昌網(wǎng)站建設(shè)哪家好/什么軟件可以推廣自己的產(chǎn)品
  • 個人網(wǎng)站 作品/站長之家工具
  • 吳謹(jǐn)含廠家不愿做網(wǎng)站/平臺網(wǎng)站開發(fā)公司
  • 網(wǎng)站項(xiàng)目策劃書實(shí)例/網(wǎng)絡(luò)推廣深圳有效渠道
  • wordpress 支持html5/網(wǎng)站標(biāo)題算關(guān)鍵詞優(yōu)化嗎
  • 在京東上怎樣做網(wǎng)站/免費(fèi)平臺推廣
  • 阿里自助建站平臺/網(wǎng)站優(yōu)化公司收費(fèi)
  • 如何建立一個網(wǎng)站分享教程/推廣賺傭金的軟件排名
  • 網(wǎng)站設(shè)計(jì)寬屏/品牌策略有哪些
  • 網(wǎng)站建設(shè)系統(tǒng)哪個好/seo點(diǎn)擊排名軟件營銷工具
  • 建設(shè)文明網(wǎng) 聯(lián)盟網(wǎng)站的/學(xué)seo推廣
  • 武漢網(wǎng)站建設(shè) loongnet/百度云官網(wǎng)
  • 如何建設(shè)一個屬于自己的網(wǎng)站/引擎優(yōu)化seo
  • 南寧做網(wǎng)站外包/品牌宣傳策略有哪些
  • 怎樣做網(wǎng)站反鏈/北京網(wǎng)站優(yōu)化多少錢
  • 軟件外包收費(fèi)標(biāo)準(zhǔn)/重慶網(wǎng)站關(guān)鍵詞排名優(yōu)化
  • 網(wǎng)站建設(shè)ppt答辯/seo優(yōu)化包括什么
  • 網(wǎng)站建設(shè)網(wǎng)址網(wǎng)站制作/長沙百度seo
  • 咸寧市住房和城鄉(xiāng)建設(shè)委員會網(wǎng)站/數(shù)字營銷策劃
  • 給網(wǎng)站平臺做推廣叫什么/產(chǎn)品推廣平臺
  • 門戶網(wǎng)站源碼入駐/站長之家收錄查詢
  • 國外b2b網(wǎng)站是什么意思/百度指數(shù)官網(wǎng)
  • 網(wǎng)站做支付需要準(zhǔn)備什么東西嗎/seo技術(shù)培訓(xùn)唐山
  • 哪一個景區(qū)網(wǎng)站做的最成熟/營銷的手段和方法
  • 網(wǎng)站后臺管理怎么做/德陽seo
  • 安卓軟件開發(fā)app/優(yōu)化關(guān)鍵詞的方法包括
  • 指紋鎖在什么網(wǎng)站做宣傳好/注冊網(wǎng)址
  • 如何查看網(wǎng)站空間大小/個人發(fā)布信息免費(fèi)推廣平臺
  • 加強(qiáng)政府網(wǎng)站建設(shè)的總結(jié)/西安seo代運(yùn)營
  • 有做瀏覽單的網(wǎng)站/百度小說風(fēng)云榜2022