C語言中exit怎麼用,在C語言中,exit 0 是什麼意思

2021-03-27 11:24:15 字數 4479 閱讀 9087

1樓:檀香透窗櫺

exit() 結束當前程序/當前程式/,在整個程式中,只要呼叫 exit ,就結束。

return() 是當前函式返回,當然如果是在主函式main, 自然也就結束當前程序了,如果不是,那就是退回上一層呼叫。

在多個程序時.如果有時要檢測上程序是否正常退出的.就要用到上個程序的返回值。

exit(1)表示程序正常退出. 返回 1;

exit(0)表示程序非正常退出. 返回 0.

操作:1、程序的開始:

c程式是從main函式開始執行, 原型如下:int main(int argc, char *argv),通常main的返回值是int型, 正確返回0.如果main的返回值為void或者無, 某些編譯器會給出警告, 此時main的返回值通常是0.

2、程序終止:

c程式的終止分為兩種: 正常終止和異常終止.正常終止分為:

return, exit, _exit, _exit, pthreade_exit異常中指分為: abort, signal, 執行緒響應取消。正常終止的前4種, 即exit系列函式.

3、 atexit終止處理程式:

iso c規定, 一個程序最對可登記32個終止處理函式, 這些函式由exit按登記相反的順序自動呼叫. 如果同一函式登記多次, 也會被呼叫多次.

原型如下:

#include

int atexit(void (*func)(void));

其中引數是一個函式指標, 指向終止處理函式, 該函式無參無返回值.

擴充套件資料

exit函式和return函式的主要區別:

1)exit用於在程式執行的過程中隨時結束程式,exit的引數是返回給os的。main函式結束時也會隱式地呼叫exit函式。

exit函式執行時首先會執行由atexit()函式登記的函式,然後會做一些自身的清理工作,同時重新整理所有輸出流、關閉所有開啟的流並且關閉通過標準i/o函式tmpfile()建立的臨時檔案。

exit是結束一個程序,它將刪除程序使用的記憶體空間,同時把錯誤資訊返回父程序;而return是返回函式值並退出函式。

通常情況:exit(0)表示程式正常, exit(1)和exit(-1)表示程式異常退出,exit(2)表示表示系統找不到指定的檔案。在整個程式中,只要呼叫exit就結束(當前程序或者在main時候為整個程式)。

2)return是語言級別的,它表示了呼叫堆疊的返回;return( )是當前函式返回,當然如果是在主函式main, 自然也就結束當前程序了,如果不是,那就是退回上一層呼叫。

在多個程序時。如果有時要檢測上個程序是否正常退出。就要用到上個程序的返回值,依次類推。而exit是系統呼叫級別的,它表示了一個程序的結束。

3)exit函式是退出應用程式,並將應用程式的一個狀態返回給os,這個狀態標識了應用程式的一些執行資訊。

2樓:愛笑的剛剛好呀

exit()通常是用在子程式

中用來終結程式用的,使用後程式自動結束,跳回作業系統。

在c語言中: exit(0):表示正常退出;exit(1):

表示異常退出,這個1是返回給作業系統;值是返回作業系統的:0是正常退出,而其他值都是異常退出,所以我們在設計程式時,可以在推出前給一些小的提示資訊,或者在除錯程式的過程中檢視出錯原因。

使用exit()時,可以不論main()的返回值型別,它的標頭檔案是 stdlib.h。

3樓:斛秋芹公琴

void

exit(int

status);

程式終止函式,在退出之前會關門所有已經開啟的檔案,將快取中的資料寫入磁碟……

status:表示退出狀態,一般情況下0表示正常退出,非0表示非正常退出,一般可以設為以一值:

exit_failure:非正常退出,知道作業系統程式非正常退出exit_success:正常退出

4樓:great莫天賜

表示 關閉所有檔案,終止正在執行的程序。

exit(1)表示異常退出.這個1是返回給作業系統的。

exit(x)(x不為0)都表示異常退出

exit(0)表示正常退出

exit()的引數會被傳遞給一些作業系統,包括unix,linux,和ms dos,以供其他程式使用。

程式例子:

#include

#include

#include

int main(intargc,char*argv)

exit()和return的區別:

按照ansi c,在最初呼叫的main()中使用return和exit()的效果相同。

但要注意這裡所說的是「最初呼叫」。如果main()在一個遞迴程式中,exit()仍然會終止程式;但return將

控制權移交給遞迴的前一級,直到最初的那一級,此時return才會終止程式。return和exit()的另一個區別

在於,即使在除main()之外的函式中呼叫exit(),它也將終止程式。

_exit()與exit的區別:

標頭檔案:

exit:#include

_exit:#include

_exit()函式:直接使程序停止執行,清除其使用的記憶體空間,並銷燬其在核心中的各種資料結構;

exit()函式則在這些基礎上作了一些包裝,在執行退出之前加了若干道工序。

exit()函式與_exit()函式最大的區別就在於 exit()函式在呼叫 exit 系統呼叫之前要檢查檔案的開啟情況,把檔案緩衝區中的內容寫回檔案。

5樓:資料**

加上標頭檔案#include

然後程式裡面exit(0);就可以了!

#include

#include

int main()

6樓:陽光上的橋

在需要的地方寫上這個語句就可以了,執行這個語句程式就結束。

7樓:小小外語君

按控制鍵,最後按指示燈,按推出就可以了

在c語言中,exit(0)是什麼意思?

8樓:犬瘟熱

exit(0)就是退出,傳入du的引數是程zhi序退出時的狀dao態碼,0表示正常退出回,其他表示非正常退出。

拓展資料答:

c語言是一門通用計算機程式語言,應用廣泛。c語言的設計目標是提供一種能以簡易的方式編譯、處理低階儲存器、產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。

儘管c語言提供了許多低階處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規格寫出的c語言程式可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(微控制器或稱mcu)以及超級電腦等作業平臺。

9樓:靜物描寫

exit(0):正常執行程式並退出程式。

copy

exit(1):非正常執行導致退出程式;

return():返回函式,若在主函式中,則會退出函式並返回一值。

拓展知識:

1. return返回函式值,是關鍵字; exit 是一個函式。

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

3. return是函式的退出(返回);exit是程序的退出。

4. return是c語言提供的,exit是作業系統提供的(或者函式庫中給出的)。

5. return用於結束一個函式的執行,將函式的執行資訊傳出個其他呼叫函式使用;exit函式是退出應用程式,刪除程序使用的記憶體空間,並將應用程式的一個狀態返回給os(作業系統),這個狀態標識了應用程式的一些執行資訊,這個資訊和機器和作業系統有關,一般是 0 為正常退出,非0 為非正常退出。

6. 非主函式中呼叫return和exit效果很明顯,但是在main函式中呼叫return和exit的現象就很模糊,多數情況下現象都是一致的。

10樓:嗨丶zh先生

exit()就是退出,傳入的引數是程式退出時的狀態碼,0表示正常退出,其他表示非正常退出

11樓:暗影之王

exit() 是電腦函式

抄。函式名: exit()

所在標頭檔案:stdlib.h

功 能: 關閉所有檔案,終止正在執行的程序。

exit(1)表示異常退出.這個1是返回給作業系統的。

exit(x)(x不為0)都表示異常退出

exit(0)表示正常退出

exit()的引數會被傳遞給一些作業系統,包括unix,linux,和ms dos,以供其他程式使用。

stdlib.h: void exit(int status);

參 數 : status //程式退出的返回值.

12樓:匿名使用者

exit()就是退出 0就是返回的引數 也可以返回 1 -1 等 你可以用來判斷函式是否正確返回

13樓:匿名使用者

退出程式,括號中的0表示程式的退出返回**,無實際意義。

c語言中變數定義是什麼,c語言中exit怎麼定義?

型別說明符 變數名稱 賦值表示式。這是基本的。比如 int a 1 2 char b b 定義了一個整數型變數a 其值為1 2就是3,定義了一個字元型變數b,b的值為字元 b 型別說明符變數名稱還可以加修飾說明,比如前面加上const表示這是一個不能修改值得常量等等。變數 是一個能夠存放某個指定型別...

c語言中作用C語言中作用

取決於在scanf中使用還是在printf中使用。在scanf中使用,則新增了 的部分會被忽略,不會被引數獲取。例如輸入為 12 abc那麼12將會讀取到變數a中,但是後面的abc將在讀取之後拋棄,不賦予任何變數 例如這裡的字元陣列b 在printf中使用,表示用後面的形參替代的位置,實現動態格式輸...

請問C語言中,1,請問C語言中,

是求餘數的意思,a b也就是a除以b餘幾 1 2 0餘1,那1 2 1 這裡 是取餘數的意思 1除以2 餘數就是1咯 計算步驟的話。cpu有直接的整數除法指令,商和餘數分別放在不同的暫存器裡。這些都交給編譯器了,我們不用理了 取模運算。也就是1除2的餘數?結果 1 除數是2的時候很特殊.a 2 等同...